html - 如何使下拉导航栏全宽

标签 html css navbar

我有一个带有以下 HTML 的导航栏:

<nav id="menu-bar">
<ul>
  <li><a href='http://sunilpatro1985.blogspot.in/' >Home</a></li>
  <li><a href='http://sunilpatro1985.blogspot.in/search/label/SeleniumTesting'>Selenium</a>
    <ul>
      <li><a href='http://sunilpatro1985.blogspot.in/2015/04/selenium-testng.html'>TestNG</a></li>
      <li><a href='http://sunilpatro1985.blogspot.com/2015/03/selenium-result-report-testng-ant.html'>ANT Reporting</a></li>
    </ul>
  </li>
  <li><a href='http://sunilpatro1985.blogspot.in/search/label/SoftwareTesting'>TestingConcepts</a></li>
  <li><a href='http://sunilpatro1985.blogspot.in/search/label/BasicJava' >JavaBasics</a></li>
  <li><a href='http://sunilpatro1985.blogspot.in/search/label/WindowsOS' >Windows</a></li>
  <li><a href='http://sunilpatro1985.blogspot.in/p/demo.html' >Demo</a></li>
</ul></nav>

以及我使用的 CSS:

#menu-bar {position: fixed; top: 0px; left: 0px; z-index: 999;height:0px;}
#menu-bar,#menu-bar a {
  text-align: center;
  margin: 0px 0px;
border:none;
}
#menu-bar ul ul {
  display: none;
}
#menu-bar ul li:hover > ul {
  display: block;
}
#menu-bar ul {
  background: #efefef; 
  background: linear-gradient(top, #efefef 0%, #bbbbbb 100%);  
  background: -moz-linear-gradient(top, #efefef 0%, #bbbbbb 100%); 
  background: -webkit-linear-gradient(top, #efefef 0%,#bbbbbb 100%); 
  box-shadow: 0px 0px 9px rgba(0,0,0,0.15);
  padding: 0 20px;
  border-radius: 7px;  
  list-style: none;
  position: relative;
  display: inline-table;
  overflow:visible;
}
#menu-bar ul:after {
  content: ""; clear: both; display: block;
}
#menu-bar ul li {
  float: left;
}
#menu-bar ul li:hover {
  background: #4b545f;
  background: linear-gradient(top, #4f5964 0%, #5f6975 40%);
  background: -moz-linear-gradient(top, #4f5964 0%, #5f6975 40%);
  background: -webkit-linear-gradient(top, #4f5964 0%,#5f6975 40%);
}
#menu-bar ul li:hover a {
  color: #fff;
}
#menu-bar ul li a {
  display: block; padding: 15px 30px;
  color: #757575; text-decoration: none;
}
#menu-bar ul ul {
  background: #5f6975; border-radius: 0px; padding: 0;
  position: absolute; top: 100%;
}
#menu-bar ul ul li {
  float: none; 
  border-top: 1px solid #6b727c;
  border-bottom: 1px solid #575f6a;
  position: relative;
}
#menu-bar ul ul li a {
  padding: 15px 30px;
  color: #fff;
}
#menu-bar ul ul li a:hover {
  background: #4b545f;
}
#menu-bar ul ul ul {
  position: absolute; left: 100%; top:0;
}

上面的菜单栏只覆盖了我桌面屏幕的 80%。我怎样才能让它全宽?我尝试了其他 Stack Overflow 答案中提到的一些选项,但没有任何帮助。请帮我在屏幕上制作全宽菜单栏。

最佳答案

看起来您实际上并没有将 nav 元素设置为 CSS 中宽度的 100%。尝试添加这个:

#menu-bar { width: 95%;}
#menu-bar > ul {width: 100% }

这在 jsFiddle 中有效,但您可能需要调整菜单栏(第一行)的百分比。

关于html - 如何使下拉导航栏全宽,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30603123/

相关文章:

twitter-bootstrap - 导航栏中文本上方/上方/上方居中的图标? ( Bootstrap 3)

php - 导航栏和无序列表

javascript - 在按下另一个输入字段的按键时触发输入字段的按键事件?

php - 在一对多关系中获取字符串值而不是外部 id

html - 为什么我不能滚动页面以查看我的 html 页面中 View 之外的内容?

html - 从按钮中删除边框

html - 如何调整 iframe 元素的大小以随屏幕大小变化?

javascript - 关闭窗口弹出div

javascript - 按下/释放时更改按钮的状态

html - 我如何在 bootstrap 4 导航栏中垂直居中图像