css标准流和浮动

标准流

块级元素占据一行显示,行内元素在一行显示   ->元素按照原来的显示方式显示称为标准流

浮动的作用和用法

float    设置元素是否浮动或者如何浮动


         none    不浮动

        left          左浮动

        right       右浮动

浮动的特点

1:浮动的元素不占据原来在标准流中的位置      (脱离标准流)

2:浮动可以让块级元素在一行上显示,让行内元素可以设置有效宽高   (本质上实现了模式的转换)

3:浮动的元素顶端对齐

清除浮动

浮动带来的影响:
       所有的子盒子都浮动之后,导致父盒子对的高度为0,父盒子后面的盒子占据了父盒子原来的位置,子盒子漂浮到了父盒子后面的盒子上了




这个时候就需要清除浮动带来的影响了

清除浮动的方法

1:给父盒子设置高度

2:给父盒子设置overflow:hidden;

3:给父盒子的最后一添加一个盒子,这个盒子有个属性:clear:both;

4:使用伪元素清除浮动  (clearfix:after)


清除浮动的原理:
1:
给父盒子设置高度,直接把塌陷的高度补充回来
2:
overflow:hidden;触发了css里的BFC原理 BFC=block  formatting context块级格式化上下文    (简单理解:设置overflow:hidden元素,里面的子元素就自成一个体系,不会受到外部的影响)
3:
clear:both隔断两边的浮动流

伪元素
:before为某个盒子添加子元素,这个子元素永远成为第一个子元素
:after 为某个盒子添加一个子元素,这个子元素永远成为最后一个子元素
原文地址:https://www.cnblogs.com/woshidameinv/p/5826650.html