在我们开发前端页面的时候,为了让页面效果美观,会出现需要居中效果的地方。下面本篇文章就来给大家介绍一下使用CSS设置居中对齐的方法,希望对大家有所帮助。
1、text-align:center —— 水平居中
仅对文字、图片、按钮等行内元素有效(display设置为inline或inline-block等)进行水平居中
2、margin:0 auto; —— 水平居中
仅水平居中,且对浮动元素定位无效.father{
width:500px;
height:200px;
background-color::#f98769;
overflow:hidden;//不可缺少否则margin-top不生效
}
.son{
width: 100px;
height: 100px;
margin:50px auto ;
background-color: #ff0000;
}
3、line-height —— 垂直居中
line-height=height ,仅对一行文字有效
4、使用表格 —— 水平、垂直居中
对td/th的align=‘center’和valign=‘middle’两属性可以水平和垂直居中
5、弹性布局 —— 水平、垂直居中.father{
display:flex;
justity-content:center;
align-items:center;
}
.father{
display:flex;
flex-direction:column;//改变主轴为cross axis
justity-content:center;
}
6、使用display:table-cell —— 水平、垂直居中
对于那些不是表格的元素,我们可以通过display:table-cell 来把它模拟成一个表格单元格.father{
height:300px;
background:#ccc;
display:table-cell; /*IE8以上及Chrome、Firefox*/
vertical-align:middle; /*IE8以上及Chrome、Firefox*/
text-align:center;
}
.son{
display:inline-block;//或是inline
}
7、奇淫技巧——子绝父相(已知子元素宽高) —— 水平、垂直居中.father{
position:relative;
}
.son{//m、n为子盒子宽、高的一半
position:absolute;
left:50%;
top:50%;
margin-left:-mpx;
margin-top:-npx;
8、未知子元素宽高 —— 水平、垂直居中.father {
position:relative;
}
.son {
position:absolute;
top:50%;
left:50%:
transform:translate(-50%,-50%) /*单独设置transform:translateY(-50%);*/
}
9、伪元素法 —— 垂直居中.father{
position: relative;
}
.father::before{
content: " ";
display: inline-block;
height: 100%;
width: 1%;
vertical-align: middle;
}
.son{
display: inline-block;
vertical-align: middle;
}