css居中方式总结

时间:2023-03-09 09:21:24
css居中方式总结

方法一: line-height

<div class="vertical" style="width:200px;height:200px;border:2px solid #999">居中显示</div>

.vertical {
line-height:200px;//这里将跟height一样
}

  

方法二:position定位方式

 给容器设置绝对定位(position:absolute),并且定位高度(top:50%)和margin-top为高度的一半(margin-top:-height/2)

<div class="vertical">居中显示</div>

.vertical {
height: 100px;
position: absolute;
top: 50%;/*元素的顶部边界离父元素的的位置是父元素高度的一半*/
margin-top: -50px;/*设置元素顶边负边距,大小为元素高度的一半*/
}

方法三:让div模拟表格效果

<div id="container">
<div id="content">content</div>
</div> #container {
height: 300px;
display: table;/*让元素以表格形式渲染*/
}
#content {
display:table-cell;/*让元素以表格的单元素格形式渲染*/
vertical-align: middle;/*使用元素的垂直对齐*/
}

  

方法四: 给出上下一样的padding值

<div class="columns">
<div class="item">test</div>
</div> .item {padding-top:30px;padding-bottom:30px;}

  

方法五:margin: 0 auto实现水平居中

满足两个条件:其一,元素需要有一个固定宽度值;其二元素的margin-left和margin-right都必须设置为auto,这两个条件少了任何一个都无法让元素达到水平居中的效果

<div class="horizontal">content</div>

.horizontal {
width: 200px;
margin: 0 auto;
}

想要使用这种类似的方式实现垂直居中是不行的,只能用于水平居中

方法六: 使用绝对定位配合负的margin实现水平居中

<div class="horizontal">content</div> 

.horizontal {
width: 960px;
position: absolute;
left: 50%;
margin-left: -480px;/*此值等于“-width/2”*/
}