元素的浮动是指 设置了浮动属性的元素会脱离标准流的控制,移动到父元素指定位置的过程。
浮动最开始是用来做文字环绕效果的。代码如下:
在css中,可以通过float属性来定义浮动,其基本语法格式如下:
浮动的特性:会脱离标准流,不占位置,会影响标准流,浮动元素漂浮在其它标准流盒子上面。浮动只有左右浮动。
如果想要让多个div在同一行显示,必须每个元素都添加浮动。
代码如下:
总结:浮动的目的就是为了让多个块级元素在同一行上显示。
注:块级/行内元素,添加浮动后,都具有行内块的特性 (行内块没有指定宽度时,宽度为内容的宽度)。
常用布局设计:利用浮动实现 两列左窄右宽布局(左边固定,右边自适应)
代码如下:
另外,浮动的使用可能会导致父元素因为子级浮动而引起内部高度为0
即 如果子盒子1和子盒子2都设置了浮动,由于浮动元素不占有位置,而父盒子又没有设置高度,此时底下的盒子就会往上跑。
代码如下:
那么,如何解决浮动带来的这个问题呢?当然,如果浮动的子盒子的高度是固定的,直接计算出父盒子的高度并设置就能解决。
但是,浮动的子盒子高度不固定时,就需要用到清除浮动了。
清除浮动的本质:为了解决父级元素因为子级元素浮动引起内部高度为0的问题。
解决方案: