本文和大家重点讨论一下CSS伪类:hover 在IE中使用及其BUG,伪类:hover是我们在CSS设计中最常运用的伪类之一,许多绚丽效果的实现离不开伪类:hover,比如我们常见的纯CSS菜单、相册效果等等。
创新互联是一家专业提供将乐企业网站建设,专注与成都网站制作、网站建设、成都h5网站建设、小程序制作等业务。10年已为将乐众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。
CSS伪类:hover 在IE中使用及其BUG
伪类:hover是我们在CSS设计中最常运用的伪类之一,许多绚丽效果的实现离不开伪类:hover,比如我们常见的纯CSS菜单、相册效果等等。或许用了这么久的伪类:hover,还有部分朋友还不完全了解hover的规则:
◆在CSS1中此伪类仅可用于a对象。且对于无href属性(特性)的a对象,此伪类不发生作用。
◆在CSS2中此伪类可以应用于任何对象。
但目前IE5.5、IE6仅支持CSS1中的:hover,不过新出的IE7是支持CSS2中的:hover。
当我们用伪类:hover做某些特殊效果时,依据CSS2很好完成,但为了现在占据主流浏览器的IE6,我们又不得不做很多工作,比如给添加a元素等来模拟完成最终的效果。
或许这样讲太空洞,请看下面一个常见的触发显示的例子(仅选择IE6为例讲解)。
我们先用CSS2的写法来实现:
XHTML部分:
ExampleSourceCode
- 鼠标移过来触发我吧!
- 哈哈,终于被你发现了!
CSS部分:
ExampleSourceCode
- *{margin:0;padding:0;}
- ul{list-style:none;margin:100px;}
- li{height:100px;width:100px;background:#000;
- font-size:12px;color:#fff;position:relative;}
- lia{display:none;}
- li:hovera{display:block;
- text-decoration:none;width:100px;height:100px;
- background:#c00;position:absolute;top:50px;
- left:50px;color:#fff;}
◆查看效果:
SourceCodetoRun
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
css - ul{list-style:none;}
- li{height:100px;width:100px;background:#000;
- font-size:12px;color:#fff;position:relative;}
- lia{display:none;}
- li:hovera{display:block;text-decoration:none;width:100px;height:100px;background:#c00;
- position:absolute;top:50px;left:50px;color:#fff;}
使用CSS2做出的效果
- 鼠标移过来触发我吧!
哈哈,终于被你发现了!