300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 关于css设置元素垂直水平居中的问题

关于css设置元素垂直水平居中的问题

时间:2019-03-01 01:19:36

相关推荐

关于css设置元素垂直水平居中的问题

第一种: 利用定位属性实现,但需要知道元素的宽高

<div class="box"></div><style>.box{weight:200px;height:400px;<!--给元素添加定位属性-->position:absolute;<!--设置元素的定位位置,距离上,做都为50%-->left:50%;top:50%;<!--设置元素的左外边距,上外边距为宽高的负1/2-->margin-left:-100px;margin-top:-200px;<!--或者简写-->margin: -200px 0 0 -100px; //四个值分别对应,上,右,下,左}*优点:兼容性好; 缺点:必须知道元素的宽高;</style>

第二种: 利用定位属性实现,不用知道元素的宽高

<div class="box"></div><style>.box{weight:200px;height:400px;<!--把元素变成定位元素-->position:absolute;<!--设置元素的定位位置,距离上,做都为50%-->left:50%;top:50%;<!--设置元素的相对于自身的偏移度为负50%(也就是元素自身尺寸的一半)-->transform:translate(-50%,-50%)}*这是css3里的样式;优点:不需要知道元素的宽高;缺点:兼容性不好,只支持IE9+的浏览器</style>

第三种:利用定位属性的四个值结合margin实现

<div class="box"></div><style>.box{weight:200px;height:400px;<!--把元素变成定位元素-->position:absolute;<!--设置元素的定位位置,距离上,做都为50%-->left:0;top:0;right:0;bottom:0<!--设置元素的margin样式值为 auto-->margin:auto;}*兼容性较好,缺点:不支持IE7以下的浏览器</style>

以上三种是使用定位属性实现的垂直水平居中,下面是弹性布局中实现的元素垂直水平居中的方法

display:flex实现垂直水平居中

<!DOCTYPE html><html><heade><style>.box{display:flex; //将外层div设置为弹性容器height:200px;width:400px;justify-content:center; //水平方向居中align-items:center; // 垂直方向居中}.item{width:50px;height:40px;}</style></heade><body><div class="box"><div class="item1></div><div class="item2></div><div class="item3></div><div class="item4></div><div class="item5></div></div></body></html>

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。