我正在为HTML网页开发基于CSS的下拉导航菜单。它在Google Chrome,Mozilla Firefox和Mobile Safari下完美呈现,问题在于Internet Explorer 9.它不会显示所有内容,而是显示所有内容,例如未分配CSS脚本的子弹。我的HTML是标准的
<link href="menu.css" rel="stylesheet" />
和
<nav><ul><li><ul>ITEM_NAME<a href="LINKS"></ul></li></ul></nav>
格式。
我的CSS脚本如下所示:
nav {
margin: auto;
text-align: center;
}
nav ul ul {
display: none;
}
nav ul li:hover > ul {
display: block;
}
nav ul {
background: #000;
list-style: none;
position: relative;
display: inline-table;
}
nav ul:after {
content: ""; clear: both; display: block;
}
nav ul li {
float: left;
}
nav ul li:hover {
background: #FF6600;
}
nav ul li:hover a {
color: #fff;
}
nav ul li a {
display: block; padding: 10px 10px;
color: #fff; text-decoration: none;
}
nav ul ul {
background: #000; padding: 0;
position: absolute; top: 100%;
}
nav ul ul li {
float: none;
border-top: 1px solid #333;
border-left: 2px solid #333;
border-right: 2px solid #333;
border-bottom: 1px solid #333;
position: relative;
}
nav ul ul li a {
padding: 10px 10px;
color: #fff;
}
nav ul ul li a:hover {
background: #FF6600;
}
nav ul ul ul {
position: absolute; left: 100%; top:0;
}
我需要做些什么才能在Internet Explorer 9中正确渲染? :) 谢谢,肖恩。
答案 0 :(得分:2)
并非所有版本的IE都能理解nav
标记。这里有一些解决方法:
html5 new elements (header, nav, footer, ..) not working in IE
答案 1 :(得分:0)
我说这可能是IE不满意的display: inline-table;
。你可以使用内联块吗?然后摆脱点,list-style: none