• <noscript id="ggggg"><dd id="ggggg"></dd></noscript>
    <small id="ggggg"></small> <sup id="ggggg"></sup>
    <noscript id="ggggg"><dd id="ggggg"></dd></noscript>
    <tfoot id="ggggg"></tfoot>
  • <nav id="ggggg"><cite id="ggggg"></cite></nav>
    <nav id="ggggg"></nav>
    成人黃色A片免费看三更小说,精品人妻av区波多野结衣,亚洲第一极品精品无码,欧美综合区自拍亚洲综合,久久99青青精品免费观看,中文字幕在线中字日韩 ,亚洲国产精品18久久久久久,黄色在线免费观看

    談談BFC

    2018-5-14    周周

    一、什么是BFC
           BFC(block formatting context)簡單來說,BFC 就是一種屬性,這種屬性會影響著元素的定位以及與其兄弟元素之間的相互作用。
        中文常譯為塊級格式化上下文。是 W3C CSS 2.1 規范中的一個概念, 從樣式上看,具有 BFC 的元素與普通的容器沒有什么區別,但是從功能上,具有 BFC 的元素可以看作是隔離了的獨立容器,容器里面的元素不會在布局上影響到外面的元素,并且 BFC 具有普通容器沒有的一些特性,它決定了元素如何對其內容進行定位,以及與其他元素的關系和相互作用。

    如何觸發 BFC

          上面介紹了 BFC 的定義,那么如何觸發 BFC 呢?
        滿足下面任一條件的元素,會觸發為 BFC :
        1、浮動元素,float 除 none 以外的值
        2、絕對定位元素,position(absolute,fixed)
        3、display 為以下其中之一的值 inline-blocks,table-cells,table-captions
        4、overflow 除了 visible 以外的值(hidden,auto,scroll)

    BFC布局與普通文檔流布局區別      
        普通文檔流布局規則
        1.浮動的元素是不會被父級計算高度
        2.非浮動元素會覆蓋浮動元素的位置
        3.margin會傳遞給父級
        4.兩個相鄰元素上下margin會重疊

        BFC布局規則
        1.浮動的元素會被父級計算高度(父級觸發了BFC)
        2.非浮動元素不會覆蓋浮動元素位置(非浮動元素觸發了BFC)
        3.margin不會傳遞給父級(父級觸發了BFC)

        4.兩個相鄰元素上下margin會重疊(給其中一個元素增加一個父級,然后讓他的父級觸發BFC)

       下面來說一下BFC的實際使用場景
       場景1:解決子盒子都浮動時 父盒子高度不參與計算問題
        <style>
          .far {
             border: 10px solid pink;
             width: 300px;
         }
          .child {
             border: 10px solid yellowgreen;
             width:100px;
             height: 100px;
             float: left;
        }
         .far{
             overflow: hidden;
        }
        </style>
        <body>
            <div class="far">
                 <div class="child"></div>
                 <div class="child"></div>
            </div>
        </body>

        根據overflow 除了 visible 以外的值(hidden,auto,scroll)就會觸發BFC的原則 計算BFC高度時 ,floatbox也參與其中。


        場景2:box垂直方向的距離 會由margin來決定 相鄰兩個盒子之間margin會重疊 ,這就是margin上下間值合并的原因

        <style>
        p {
            color: pink;
            background: #fcc;
            width: 200px;
            height:100px;
            text-align:center;
            margin: 100px;
        }
        </style>
        <body>
           <p></p>
           <p></p>
        </body>

        要解決這個問題我們可以在p外面包裹一層容器,并觸發該容器生成一個BFC。那么兩個P便不屬于同一個BFC,就不會發生margin重疊了,解決代碼如下。
        <style>
           .box {
              overflow: hidden;
           }
           p {
              background: green;
              width: 200px;
              height: 200px;
              margin: 100px;
          }
        </style>
        <body>
           <p></p>
           <div class="box">
               <p></p>
           </div>

        </body>

        場景3:實現左側固定右側自適應等類似布局
        <style>
            .out{
                border: 1px solid red;
                height: 200px;
            }
            .left{
                width: 200px;
                height: 150px;
                background-color: green;
                float: left;
            }
            .right{
                background-color: pink;
                height: 250px;
                overflow: hidden;
            }
          </style>
          <body>
         <div class="out">
            <div class="left"></div>
            <div class="right"></div>
          </div>

    日歷

    鏈接

    個人資料

    藍藍設計的小編 http://www.lzhte.cn

    存檔

    主站蜘蛛池模板: 中国少妇| 男女深夜福利| 日韩欧美一区二区三区四区 | 亚洲国产午夜福利精品| 中文字幕影院一区二区毛片 | 久久99热这里只有精品66| 全黄性性激高免费视频| 69视屏| 亚洲国产成人片在线观看无码| 久久九九久精品国产| 亚洲欧美18V中文字幕高清| 综合五月天| 上蔡县| 国产精品一区二区韩国AV| 亚洲综合无码一区二区三区不卡 | 1000部啪啪未满十八勿入| 福利导航网| 久久精品| 亚洲精品动漫免费二区| 国产精品视频优久久| 欧美熟妇色ⅹxxx欧美妇| 九一福利社| 欧美另类性爱| 国产成人高清精品免费5388| 日本熟妇精品一区二区三区| 亚洲一区二区三区av链接| 免费乱码人妻系列无码专区| 48沈阳熟女高潮嗷嗷叫| 99久久九九视频免费| 欧美人与禽交片mp4| 国产三级在线播放视频| 久久婷婷国产精品香蕉| 免费一级毛片在级播放| 午夜三级A三级三点在线观看| 国产欧美另类第一页| 亚洲欧洲日韩国内精品| 午夜精品成人一区二区| 国产999久久高清免费观看| 亚洲AV无码乱码在线观看裸奔| 日本熟女一区二区视频| 亚洲国产欧美日韩另类|