1. <sup id="1kcns"></sup>

    2. <rt id="1kcns"><legend id="1kcns"></legend></rt>
      国产AV巨作丝袜秘书,国产精品久久香蕉免费播放,国产草草影院ccyycom,涩涩爱狼人亚洲一区在线,日本阿v片在线播放免费,国产精品一区二区三区蜜臀,精品一区二区三区在线观看l,av深夜免费在线观看

      談談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.payeee.cn

      存檔

      主站蜘蛛池模板: 久久国产精品伊人青青草| 欧美热亚洲热中文字幕| 亚洲春色在线视频| 亚洲精品无码成人aaa片| 欧美 日韩 人妻 高清 中文| 手机看片日本在线观看视频| www.久久成人亚洲区| 国产激情自拍小视频网| 蜜桃av亚洲精品一区二区| 亚洲第一成年网| 18禁高潮出水呻吟娇喘蜜芽| 国产二区精品久久| 亚洲最大福利视频网| 白丝乳交内射一二三区| 桃花影视无码专区一区二区| 天天躁日日躁狠狠躁性色avq| 成人午夜av在线播放| 性色做爰片在线观看ww| 亚洲高潮喷水无码AV电影| 黑人无码av| 国产精品视频免费一区二区三区 | 日韩AV在线网址观看| 久久五月丁香激情综合| 精品人妻av区乱码| 久久人妻av2区| 国产亚洲欧美另类一区二区三区| 日本黄页网站免费观看| 性AV十丰满AV十无码AV| 亚洲国产美女精品久久久| 麻豆精品三级国产国语| 亚洲高清国产自产拍av| 第一自拍国内一区| 中文字幕精品人妻av在线| 亚洲成人国产精品| 亚洲综合成人一区二区三区| 国产睡熟迷奷系列网站| 伊人大杳焦在线| 国产精品第一国产精品| 日韩精品久久| 久久午夜夜伦鲁鲁片免费无码影院| 狠狠人妻久久久久久综合蜜桃|