css - 所有屏幕中的全宽导航菜单

标签 css html

你好。

我正在使用 HTML5 和 CSS 创建响应式菜单。为此,我为台式机创建了导航菜单,然后我使用带有标签的复选框来显示响应式菜单(我的意思是显示菜单)。

这是代码:

代码注意:(图片为350px宽x 100px高):

body {
  margin: 0px;
}
/*Strip the ul of padding and list styling*/

ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  position: absolute;
}
/*Hacer que la imagen no se mueva */

#img-nav {
  padding-top: 0px !important;
}
/*Create a horizontal list*/

li {
  display: inline-block;
  float: left;
}
/*Style for menu links*/

li a {
  display: block;
  min-width: 200px;
  height: 70px;
  text-align: center;
  line-height: 50px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #fff;
  background: #2f3036;
  text-decoration: none;
  padding-top: 30px;
}
/*Hover state for top level links*/

li:hover a {
  background: #19c589;
}
/*Style for dropdown links*/

li:hover ul a {
  background: #f3f3f3;
  color: #2f3036;
  height: 40px;
  line-height: 40px;
}
/*Hover state for dropdown links*/

li:hover ul a:hover {
  background: #19c589;
  color: #fff;
}
/*Hide dropdown links until they are needed*/

li ul {
  display: none;
}
/*Make dropdown links vertical*/

li ul li {
  display: block;
  float: none;
}
/*Prevent text wrapping*/

li ul li a {
  width: auto;
  min-width: 100px;
  padding: 0 20px;
}
/*Display the dropdown on hover*/

ul li a:hover + .hidden,
.hidden:hover {
  display: block;
}
/*Style 'show menu' label button and hide it by default*/

.show-menu {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-decoration: none;
  color: #fff;
  background: #19c589;
  text-align: center;
  padding: 10px 0;
  display: none;
}
/*Hide checkbox*/

input[type=checkbox] {
  display: none;
}
/*Show menu when invisible checkbox is checked*/

input[type=checkbox]:checked ~ #menu {
  display: block;
}
/*Responsive Styles*/

@media screen and (max-width: 760px) {
  /*Make dropdown links appear inline*/
  ul {
    position: static;
    display: none;
  }
  /*Create vertical spacing*/
  li {
    margin-bottom: 1px;
  }
  /*Make all menu links full width*/
  ul li,
  li a {
    width: 100%;
  }
  /*Display 'show menu' link*/
  .show-menu {
    display: block;
  }
  #img-nav {
    display: none;
  }
}
<!doctype html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <title>CSS Only Navigation Menu</title>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="css/home.css">
</head>

<body>
  <nav>
    <label for="show-menu" class="show-menu">Show Menu</label>
    <input type="checkbox" id="show-menu" role="button">
    <ul id="menu">
      <li>
        <a href="#" id="img-nav">
          <img src="images/nav/logoplacehold.png" alt="">
        </a>
      </li>
      <li><a href="#">Inicio</a>
      </li>
      <li>
        <a href="#">Aula Virtual</a>
        <ul class="hidden">
          <li><a href="#">Test Online</a>
          </li>
          <li><a href="#">Test DGT</a>
          </li>
        </ul>
      </li>
      <li><a href="#">Resultado Teórico</a>
      </li>
      <li><a href="#">Nuestros Vehículos</a>
      </li>
      <li><a href="#">Permisos</a>
      </li>
    </ul>
  </nav>
</body>

</html>

问题:

我想要一个全宽菜单(在 PC 中),但我不知道该怎么做。

谢谢大家!

最佳答案

糟糕!我搞砸了。将 ul 包围在 HTML 中的 div 中。将 div 的 z-index 设置为大于 0 的值,位置设置为固定,宽度设置为 100%。

关于css - 所有屏幕中的全宽导航菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38964337/

相关文章:

html - 已编写代码的流体布局

html - 忽略父宽度或填充

javascript - 在 MS Edge 中禁用表单完成

javascript - 为什么此代码不提醒浏览器类型?

html - 图像对齐占段落的 100%

html - 使用一个链接更改悬停时的 div 图像和文本

html - css 条件格式

javascript - 我想更改表单控件类类型的日期格式是日期吗?

javascript - 通过jquery链接两个div - 一个div中发生的任何事情都会发生在另一个div中

JavaScript 通过链接更改 div 颜色