CSS- 为什么下拉菜单在 Internet Explorer 中水平打开?
CSS- Why does dropdown menu open horizontally in Internet Explorer?
该代码在 Firefox 中完美运行。当您将鼠标悬停在 "Parts & Tools" 菜单上时,它会按应有的方式垂直打开。
但在 Internet Explorer 中它是水平打开的。
我试过摆弄显示器,但仍然无法确定问题所在。
我应该指出,代码是根据浏览器大小编写的。
div#Container {
position: relative;
}
.nav {
width: 100%;
position: absolute;
background-color: white;
padding: 15px;
}
.nav a {
color: #ffffff;
text-decoration: none;
background-color: #000000;
}
.nav ul {
display: block;
}
.nav ul a {
display: block;
float: left;
width: 150px;
padding: 10px 20px;
border: 1px solid #ffffff;
text-align: center;
font-size: 1.3em;
}
.nav ul a:hover {
background: red;
}
.nav ul li {
display: inline-block;
vertical-align: top;
}
.nav ul ul li {
display: block;
}
.nav ul li:hover>ul {
display: block;
}
.nav ul li ul {
margin: 0;
padding: 0;
display: none;
background-color: #000000;
top: 45px;
}
div#middle {
position: absolute;
}
<div id="Container">
<div class="nav">
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">Cars</a></li>
<li><a href="#">Parts & Tools</a>
<ul>
<li><a href="#">Parts</a></li>
<li><a href="#">Tools</a></li>
</ul>
</li>
<li><a href="#">About</a></li>
<li><a href="#">Contact</a></li>
</ul>
</div>
<div class="middle">
<p>text</p>
</div>
</div>
是列表项上的"display:inline-block",内联表示水平,所以不是
.nav ul li
{
display: inline-block;
}
你想要
.nav ul li
{
display: block;
}
该代码在 Firefox 中完美运行。当您将鼠标悬停在 "Parts & Tools" 菜单上时,它会按应有的方式垂直打开。 但在 Internet Explorer 中它是水平打开的。 我试过摆弄显示器,但仍然无法确定问题所在。 我应该指出,代码是根据浏览器大小编写的。
div#Container {
position: relative;
}
.nav {
width: 100%;
position: absolute;
background-color: white;
padding: 15px;
}
.nav a {
color: #ffffff;
text-decoration: none;
background-color: #000000;
}
.nav ul {
display: block;
}
.nav ul a {
display: block;
float: left;
width: 150px;
padding: 10px 20px;
border: 1px solid #ffffff;
text-align: center;
font-size: 1.3em;
}
.nav ul a:hover {
background: red;
}
.nav ul li {
display: inline-block;
vertical-align: top;
}
.nav ul ul li {
display: block;
}
.nav ul li:hover>ul {
display: block;
}
.nav ul li ul {
margin: 0;
padding: 0;
display: none;
background-color: #000000;
top: 45px;
}
div#middle {
position: absolute;
}
<div id="Container">
<div class="nav">
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">Cars</a></li>
<li><a href="#">Parts & Tools</a>
<ul>
<li><a href="#">Parts</a></li>
<li><a href="#">Tools</a></li>
</ul>
</li>
<li><a href="#">About</a></li>
<li><a href="#">Contact</a></li>
</ul>
</div>
<div class="middle">
<p>text</p>
</div>
</div>
是列表项上的"display:inline-block",内联表示水平,所以不是
.nav ul li
{
display: inline-block;
}
你想要
.nav ul li
{
display: block;
}