我想使用CSS在IE中创建子菜单,但IE不适用于悬停操作。我不想使用JavaScript。
我该如何解决这个问题?有没有其他方法可以在没有CSS或JavaScript的情况下创建子菜单?
答案 0 :(得分:1)
您可以使用以下基于jQuery库的IE6代码
if (jQuery.browser.msie && navigator.userAgent.toLowerCase().indexOf('msie 6') > -1){
jQuery(document).ready(function() {
jQuery('.menu li').hover(
function() {
jQuery(this).addClass('hover');
},
function() {
jQuery(this).removeClass('hover');
}
);
});
}
请将选择器“.menu li”更改为您的,并按以下方式在CSS中编写 .menu li:hover,.menu li.hover {...}
答案 1 :(得分:0)
你是什么意思IE不能用于悬停动作? IE6及更早版本仅支持:将鼠标悬停在A标签和IE7上,之后在任何标签上都支持它。绝对可以制作100%的CSS菜单。以下是我通过快速Google搜索找到的内容。
答案 2 :(得分:0)
IE6及以下版本仅支持:HOVER
标记上的<a>
伪类。您可以通过应用以下CSS使<a>
标记的行为类似于块级元素(我假设您当前正在使用<ol><li>
):
a.submenu { display: block; }
答案 3 :(得分:0)
我强烈建议使用whatever:hover,这是一个HTC扩展,它允许在IE6中的所有元素上使用:hover伪类,而不仅仅是锚点。
用法很简单。将其添加到标题中,更改路径以反映您的设置:
<!--[if lte IE 6]>
<style type="text/css">
body{behavior:url(path/to/iehover.htc);}
</style>
<![endif]-->
就是这样!
答案 4 :(得分:0)
我找到了这个页面,但没有机会看到它是否真的只是CSS。 http://www.cssplay.co.uk/menus/final_drop.html
我的原始方法似乎不再适用于大多数浏览器,也无法验证。