水平导航栏在Firefox中不起作用

时间:2016-03-15 17:21:42

标签: html css

我的导航栏在Firefox中不起作用。您无法单击任何子项。如果我在这里放了太多代码,我很抱歉,但我真的不知道是什么导致了这个问题。我尽可能多地删除了那些微不足道的东西。

#navbar {
  width: 100%;
  border-top: 1px solid #879478;
  height: 35px;
}
#navigation {
  width: 1000px;
  margin-left: auto;
  margin-right: auto;
  margin-top: -10px !important;
}
#nav {
  float: left;
  width: 1000px;
  height: 35px;
  list-style: none;
}
#nav a {
  text-indent: 0;
  display: inline-block;
  margin-top: -1px !important;
  font-weight: normal;
  border: 1px solid transparent;
  font-style: normal;
  height: 35px;
  line-height: 35px;
  text-decoration: none;
  text-align: center;
}
#nav ul {
  position: absolute;
  list-style: none;
  display: inline-table;
  margin-top: 1px !important;
  height: 35px;
}

#nav li:hover > ul {
    display: block;    
}

#nav li {
  float: left;
}
#nav ul {
  display: none;
}
#nav ul a {
  -moz-box-shadow: none !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  display: inline-block;
  width: inherit;
  text-align: center;
  display: block;
  font-weight: normal;
}
#nav ul {
  padding: 0px;
  z-index: 100 !important;
}
#nav ul li {
  float: none;
}
#nav ul ul {
  width: 141px !important;
  padding-top: 1px !important;
  border-top: 1px solid #6f8059 !important;
  position: absolute;
  margin-top: -38px !important;
  left: 100%;
  margin-left: 1px;
  z-index: 100 !important;
}
<div id="navbar">
  <div id="navigation">
    <ul id="nav">
      <li><a style="width: 150px !important;">subject 1</a>
        <ul>
          <li><a href="blahblah1.html">child 1</a>
          </li>
          <li><a href="blahblah2.htm">child 2</a>
          </li>
        </ul>
      </li>
    </ul>
  </div>
</div>

1 个答案:

答案 0 :(得分:1)

正如@Nitin Garg所说,#nav ul { display: none; }行正在隐藏子元素。

但是,如果要在父li hover上显示childs元素,则必须添加以下行:

#nav li:hover ul {display: block; }