二月 26th, 2006
再见了Peekaboo/Guillotine
Category: CSS, Author: Nicky, Popularity: 7%
Peekaboo和Guillotine是IE上比较著名的2个CSS BUG,这是微软所不愿看到的,IE7在CSS方面首先要消灭的就是他们。所以在IEBlog上列出的改进CSS列表中,头2个就是Peekaboo和Guillotine。也就是说可能今后我们再也看不见它们了,那么在IE7还没有正式发布的时候,再见它最后一面。
IE6 Peekaboo Bug
Peekaboo本意就是“躲躲猫”游戏(捉迷藏),这个BUG也是这样,让你的页面内容时隐时现。如果当你真正明白这个BUG的原因所在,那么我们在书写CSS的时候就很容易解决这个问题。关于这个BUG的原文在这里,里面使用了很多辅助元素来形象的说明和演示这个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>
#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>
* html #poststuff {
height: 100%; /* kill peekaboo bug in IE */
}
height: 100%; /* kill peekaboo bug in IE */
}

