#nav li:hover ul 与#nav li a:hover ul 的区别

时间:2023-03-08 16:01:57

#nav li:hover ul 与#nav li a:hover ul 有什么区别?
────────────────────────────────────────────

#nav li:hover ul 与#nav li a:hover ul 的区别在于
前者是鼠标在li上时的ul的样式
后者是鼠标在li的a上时的ul的样式

────────────────────────────────────────────

这个问题还要考虑浏览器。
css1.1 里 :hover 伪类只能用在 a 标签上,css2.0 以后可以用于所有标签。也就是说,到目前的 ie7.0
li:hover 仍然是不起作用的,需要用脚本来实现这个 hover 效果

────────────────────────────────────────────

呵呵,在IE浏览器中不支持非 a 标签的 :hover伪类了
尽量考虑使用a伪类
如果需要兼容的话,可以使用javascript来给指定标签加上onmouseover onmouseout事件

var items = document.getElementByIdx_x_x( "nav
").getElementsByTagName_r( "li ");
for( i=0 ;i
{
items[i].onmouseover = function(){ ..this.className= "over "...
};
items[i].onmouseout = function(){ ... };
}