HTML和CSS

172 阅读1分钟

HTML和CSS中高度塌陷和BFC

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .outer{
    border:10px red solid;
    /*
    BFC(Block FORmatting Context) 块级格式化环境
     BFC委CSS的一个隐含属性,可以为一个元素开启BFC
     开启BFC该元素会变成一个独立的布局区域
    元素开启BFC的特点:
    1.开启BFC的元素不会被浮动元素覆盖
    2.开启BFC的元素子元素和父元素的外边距不会重叠
    3.开启BFC的元素可以包含浮动的子元素
    开启BFC的方式:
    1.设置元素的浮动
    2.将元素设置为行内块元素(不推荐使用)
    3.将一个元素的overflow设置为visible的值
     */
     /*float:left;*/ /*设置元素的浮动,开启BFC*/
     /*display:inline-block;*/ /*将元素设置为行内块元素*/
     /*overflow: hidden;*/
        }
        .inner{
            width:100px;
            height:100px;
            background-color: seagreen;
           float:left;
            
            /*高度塌陷问题
            在浮动布局中,父元素高度默认被子元素撑开,子元素从文档流中脱离将无法
            撑起父元素的高度,导致父元素的高度丢失
            父元素高度丢失以后,其下的元素会自动上移,导致页面的布局混乱
            高度塌陷是布局中常见的一个问题
            */
        }
    </style>
</head>
<body>
    <div class="outer"></div>

      <div class="inner"></div>

    <div style="width:200px;height:200px;background-color: yellow;"></div>
</body>
#</html>