最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

CSS浮動所產(chǎn)生的內(nèi)容溢出問題及清除浮動的方法小結(jié)

segmentfault   發(fā)布時間:2016-05-30 11:12:10   作者:秦至   我要評論
CSS的float浮動效果在一些情況下非常不穩(wěn)定,控制不好的時候一般還是清除浮動為妙,這里我們就來看一下CSS浮動所差生的內(nèi)容溢出問題及清除浮動的方法小結(jié)

拋一塊問題磚(display: block)先看現(xiàn)象:
在非IE瀏覽器(如Firefox)下,當(dāng)容器的高度為auto,且容器的內(nèi)容中有浮動(float為left或right)的元素,在這種情況下,容器的高度不能自動伸長以適應(yīng)內(nèi)容的高度,使得內(nèi)容溢出到容器外面而影響布局的現(xiàn)象。這個現(xiàn)象叫浮動溢出,為了防止這個現(xiàn)象的出現(xiàn)而進行的CSS處理,就叫CSS清除浮動。
引用W3C的例子,news容器沒有包圍浮動的元素。

CSS Code復(fù)制內(nèi)容到剪貼板
  1. .news {   
  2.   background-colorgray;   
  3.   bordersolid 1px black;   
  4.   }   
  5.   
  6. .news img {   
  7.   floatleft;   
  8.   }   
  9.   
  10. .news p {   
  11.   floatrightright;   
  12.   }  
XML/HTML Code復(fù)制內(nèi)容到剪貼板
  1. <div class="news">  
  2. <img src="news-pic.jpg" />  
  3. <p>some text</p>  
  4. </div>  

2016530110710105.jpg (316×320)

清除浮動:

1,在浮動元素后面增加<br/>標(biāo)簽;

XML/HTML Code復(fù)制內(nèi)容到剪貼板

  1.   <br/>標(biāo)簽有自帶的清除浮動屬性;  

2,在浮動元素后面增加一個清除浮動層;

XML/HTML Code復(fù)制內(nèi)容到剪貼板
  1.  <div>  
  2.   
  3.     <div style="float:left"></div>  
  4.   
  5.     <div style="float:left"></div>  
  6.   
  7.     <div style="clear:both"></div>  
  8.   
  9.   </div>  

3,給浮動元素添加overflow:auto樣式;

4,為最后浮動元素設(shè)置如下樣式:

CSS Code復(fù)制內(nèi)容到剪貼板
  1. /* 清理浮動 */  
  2. .clearfix:after {   
  3.  visibility:hidden;   
  4.  display:block;   
  5.  font-size:0;   
  6.  content:" ";   
  7.  clear:both;   
  8.  height:0;   
  9. }   
  10. .clearfix {   
  11.  zoom:1;   
  12. }  

其原理是,在「高級」瀏覽器中使用 :after 偽類在浮動塊后面加上一個非 display:none 的不可見塊狀內(nèi)容來,并給它設(shè)置 clear:both 來清理浮動。在 ie6 和 7 中給浮動塊添加 haslayout 來讓浮動塊撐高并正常影響文檔流。
5,另一種簡潔的辦法:

CSS Code復(fù)制內(nèi)容到剪貼板
  1. .cf:before, .cf:after {   
  2.     content:"";   
  3.     display:table;   
  4. }   
  5. .cf:after {   
  6.     clear:both;   
  7. }   
  8. .cf {   
  9.     zoom:1;   
  10. }  

原理還是一樣的。使用 :after 偽類來提供浮動塊后的 clear:both。不同的是,隱藏這個空白使用的是 display: table。而不是設(shè)置 visibility:hidden;height:0;font-size:0; 這樣的 hack。

值得注意的是這里中的 :before 偽類。其實他是來用處理 top-margin 邊折疊的,跟清理浮動沒有多大的關(guān)系。但因為浮動會創(chuàng)建 block formatting context,這樣浮動元素上的另而一元素上如果剛好有 margin-bottom 而這個浮動元素剛好有margin-top 的話,應(yīng)該讓他們不折疊(雖然這種情況并不常見)。

相關(guān)文章

  • 清除css浮動的三種方法小結(jié)

    這篇文章主要介紹了清除css浮動的三種方法小結(jié),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-19
  • 詳解css清除浮動float的七種常用方法總結(jié)和兼容性處理

    這篇文章主要介紹了詳解css清除浮動float的七種常用方法總結(jié)和兼容性處理,非常具有實用價值,需要的朋友可以參考下
    2017-09-11
  • 淺談css中浮動和清除浮動帶來的影響

    這篇文章主要介紹了淺談css中浮動和清除浮動帶來的影響,通過代碼示例和圖片展示詳細(xì)介紹講解了浮動的應(yīng)用和實現(xiàn)效果,需要的朋友可以參考下
    2017-08-14
  • CSS清除浮動方法小結(jié)

    本文主要介紹了CSS解決浮動,清除浮動的幾種方法:1、設(shè)置父元素高度;2、overflow;3、增加子元素(塊級),并且設(shè)置其clear屬性值為both來解決(隔墻法、內(nèi)墻法);4、使
    2017-03-22
  • 詳解CSS中zoom屬性或overflow:auto屬性清除浮動的作用

    這篇文章主要為大家介紹了CSS中zoom屬性或overflow:auto屬性清除浮動的作用,文中通過實例代碼介紹的很詳細(xì),相信會對大家的理解和學(xué)習(xí)具有一定的參考借鑒價值,有需要的朋
    2016-11-26
  • 關(guān)于清除浮動塌陷的幾種方法總結(jié)

    在大家在使用css的過程中,多多少少會遇到清除浮動這個問題。所以這篇文章給大家總結(jié)了div+css中關(guān)于清除浮動塌陷的4種方法,相信會對大家學(xué)習(xí)或者使用div+css能有所幫助,
    2016-10-17
  • 淺談CSS中的clear清除浮動

    下面小編就為大家?guī)硪黄獪\談CSS中的clear清除浮動。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • CSS清除浮動的方法詳解

    這篇文章主要介紹了CSS清除浮動的方法詳解,值得注意的是并不是每次單純把浮動清除掉就可以解決相關(guān)問題,文中最后談到的閉合浮動的方案也非常值得一試,需要的朋友可以參考下
    2016-05-30
  • DIV+CSS 清除浮動常用方法總結(jié)

    下面小編就為大家?guī)硪黄狣IV+CSS 清除浮動常用方法總結(jié)。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-05-06
  • Css實現(xiàn)清除浮動的方法匯總

    這篇文章主要介紹了Css實現(xiàn)清除浮動的方法匯總,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-07-11

最新評論

东安县| 茂名市| 铜鼓县| 射阳县| 集贤县| 舒城县| 芜湖市| 新密市| 德兴市| 遵化市| 息烽县| 滨海县| 会泽县| 孝感市| 盐池县| 东乡县| 昭平县| 图片| 安义县| 鲁甸县| 衡南县| 宜兰市| 突泉县| 中山市| 宁强县| 甘肃省| 奇台县| 温宿县| 青河县| 平舆县| 冀州市| 峨边| 凯里市| 麻栗坡县| 盐津县| 罗田县| 余江县| 安宁市| 巩义市| 浦县| 华宁县|