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代碼:
- <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>
<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的定位類型都設置爲“相對”。