IE6 Peekaboo(躲躲貓) Bug

 

IE6 Peekaboo(躲躲貓) BugPeekaboo本意就是“躲躲貓”遊戲(捉迷藏),這個BUG也是這樣,讓你的頁面內容時隱時現。 關於這個BUG的原文在這裏:http://www.positioniseverything.net/explorer/peekaboo.html裏面使用了很多輔助元素來形象的說明和演示這個BUG,如果你英文不是很好或者其他原因,你可以看下面的講解。在一個div#box裏面放置一個浮動的div#float(例如:裏面的內容是2行文字)和一個沒有任何 CSS樣式的div#content(例如:裏面的內容是1行文字),然後在它們的下面放置一個div#clear(例如:裏面的內容是1行文字)。演示html代碼:

運行代碼無着色模式複製打印?

  1. <style type="text/css">  
  2.     #box {background: #eee;}   
  3.     #float {float : left;}   
  4.     #clear {clear: both;}   
  5. </style>  
  6.     
  7. <div id="box">  
  8.     <div id="float">左邊漂浮的任意內容<br />這是爲了比右邊的內容高一點</div>  
  9.     <div id="content">任意輸入的內容</div>  
  10.     <div id="clear">下面清除的標籤</div>     
  11. </div>  

<style type="text/css"> #box {background: #eee;} #float {float : left;} #clear {clear: both;}</style> <div id="box"> <div id="float">左邊漂浮的任意內容<br />這是爲了比右邊的內容高一點</div> <div id="content">任意輸入的內容</div> <div id="clear">下面清除的標籤</div> </div>這樣的話在IE7及其它標準瀏覽器瀏覽是沒有問題的,分別顯示出這3塊文字內容,但是在IE下瀏覽時就只顯示出了div#float、div#clear裏面的內容(演示),div#content就莫明奇妙的消失了,在哪裏?你把鼠標放在應該顯示的地方劃一劃,就出現了本該出現的內容。也就是在變化背景的時候它就會出現,你也可以在div#clear下面放置很長很長的內容,也就是使瀏覽器出現滾動條,你向下拖動滾動條再拖回來,它一樣也出現了,這樣就明白了它爲什麼叫Peekaboo!修復Peekaboo Bug幾種方法:● 不要在div#box裏面使用背景,或者保持div#clear和div#float在一起。● 給div#box一個明確的“寬度”或“高度” 。#box { height: 100%; /* kill peekaboo bug in IE */}● 把div#box和div#float的定位類型都設置爲“相對”。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章