这一段CSS代码相当简单,目的就是想用CSS来控制某段文字的显示与隐藏。起初我采用了下面的代码,令人不可思议的是,它们在我的IE6.0上居然没有任何反应,大家不信可以亲自试验一下。 <style type="text/css"> a {font-size:12px; text-decoration:none; height:50;} a:hover {text-decoration:none;} a span {font-size:12px; display:none;} a:hover span {display:block;} </style> <a href="#">link<span>我是隐藏内容</span></a> 我仔仔细细地检查了一遍代码,实在找不到什么毛病来。没有办法,我只能像平时查错纠错一样,试着改改CSS里的代码。当我改变了hover伪类链接中的代码时(代码如下所示),突然发现代码可以运行了。 为了确认CSS是否真存在该bug,我又特地改用大小、颜色、位置等样式来试验,在不改变hover伪类链接的前提下,都无法得到正常情况下应得到的效果。从而可以得知:在包含选择符有伪类链接时,存在着CSS样式无效的bug,希望CSS下一版中能修正这个错误。 a:hover {text-decoration:none;border:none;} 这样我们可以知道,在hover伪类链接中必须包含某些特殊的CSS属性声明才能消除这个bug。 我用了CSS里所有的属性声明来尝试解决这个bug,发现只有一下几项属性声明能解决这个问题。 border display postion overfilow background 而我之所以采用“border:none”这种方法,是因为它还能从Netscape 4中消除一些不同的CSS错误。 注:本文所提及的bug在IE5.5、IE6.0中均存在。 (责任编辑:admin) |