html里在div内部进行元素水平排列的方法
一、display:inline-block
问题:两个div之间会存在一个空隙,也就是浏览器会将换行符,缩进符,以及空格当做一个空格来处理,即使有两次空格,或者一个换行加一个空格,等等都会解析成一个空格使用。
解决方法:
1.设置div的margin-left: -font-size/2
2.设置两个div的父标签的font-size:0
二、float:left/right
问题:父容器高度塌陷。这时父容器div的高度为0,因为浮动元素会脱离常规文档流,它的父容器计算高度时会忽略它。
解决方法:overflow:hidden清除浮动即通过触发BFC方式,实现清除浮动
三、绝对定位
元素脱离常规文档流,问题与float相同。
四、弹性布局
.father{
display: flex;
}
问题:不支持低版本浏览器。