写页面时会遇到:子元素float父元素的高度不会被拉伸;在layout中,box1和box2,其中box1float:left,thisisbox2会在box1的下面,(如果文字太多,会形成文字环绕的效果),但我只想让box2在右边盒子1;或者上下框的边距重叠。这些问题可以通过添加overflow:hidden以及其他一些方法来解决,但是为什么呢?其实就是BFC的作用。男朋友??什么?BFC这个词....BFC:全名框格式化上下文;即块格式化上下文,块级元素参与;那么什么是块级?blahblahblah...'W3C'CSS2.1规范:块级元素是源文档中视觉上被格式化为块(例如,段落)的元素。'display'属性的以下值使元素成为块级:'block'、'list-item'和'table'。块级元素是源文档中可视格式中被视为块(例如段落)的那些元素。‘display’属性的以下值构成一个块级别:‘block’、‘list-item’和‘table’。那么它是如何形成的呢?以下情况之一:float值不为noneposition:fixed/absolutedisplay:table-cell/table-caption/inline-block/flex/inline-flex.overflowpropertyisnotvisible我们知道什么是BFC,如何构成BFC,那么接下来说说BFC的布局规则。滴滴……内部的盒子会一个一个竖着放。两个相邻框之间的垂直距离由边距决定。属于同一BFC的两个相邻Box的边距将重叠。每个框的左外边框紧挨着左边框的包含块(从左到右格式化时,否则相反)。即使有浮动,BFC的区域也不会和浮动框重叠。BFC是页面上一个隔离的独立容器,容器内部的子元素不会影响外部的元素。反之亦然。在计算BFC的高度时,浮动元素也会参与计算。应该知道的理论差不多了,该回答了~问题一:子元素浮动父元素的高度不会展开
