css - 如何使用无语义的 css 框架使 div 跨度为页面长度的 100%?

标签 css css-frameworks grid-system unsemantic-css

我需要编辑框架吗?或者我应该在容器 div 之外创建这个 div ?我想要跨越 100% 窗口的 div 是一个菜单 div,所以我希望它跨越 100% 窗口,但我希望它里面的菜单项符合网格系统。

解决这个问题的最佳方法是什么?将菜单项放入网格内,然后使用减号填充将其放入?

非常感谢。

最佳答案

我知道这个问题大约有六个月了,但我想我应该在这里发布我的解决方案,以防它对某人有用。

所以我的解决方案是仅将网格类应用于实际需要网格布局的元素。在我的示例中,header 没有任何非语义类,因此它可以跨越页面的整个宽度,但 nav 元素是包含列的网格容器与grid-xx类。根据Unsemantic's Sass Documentation它的默认最大宽度应为 1200px;

HTML

<header>                               
  <nav class="grid-container">
    <ul class="grid-33">
      <li><h2>My Site</h2></li>
    </ul>
    <ul class="grid-66">
      <li><a href="#">Home</a></li>
      <li><a href="#">Settings</a></li>
    </ul>
  </nav>
</header>

CSS

对于这个例子:

  • 重置 htmlbodyheader 的框模型,以便导航占据页面的整个宽度
  • 标题设置浅灰色背景颜色,以便您可以看到它占据了页面的整个宽度
  • nav 放置蓝色边框,以便您可以看到带有 grid-container 类的元素
  • 水平对齐 ul 并显示红色边框,以便您可以看到类 grid-xx 的元素

当然,您必须进一步设置导航的样式,以使其能够查找您的元素。这是开始的样式表(使用重置盒模型和内联 block 列表混合使用指南针构建):

html, body, header {                                                                                                                                                                                                                     
  margin: 0;
  padding: 0;
  border: 0;
}

nav {
  border: thin solid blue;
}

ul {
  margin: 0;
  padding: 0;
  border: 0;
  overflow: hidden;
  *zoom: 1;
  border: thin solid red;
}
ul li {
  list-style-image: none;
  list-style-type: none;
  margin-left: 0;
  display: -moz-inline-stack;
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  zoom: 1;
  *display: inline;
  white-space: nowrap;
}

header {
  background-color: lightgray;
}

关于css - 如何使用无语义的 css 框架使 div 跨度为页面长度的 100%?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17870707/

相关文章:

css - 选择一个CSS框架

CSS 框架建议

javascript - 有没有办法根据 Angular 中的元素数量更改 col-md 类?

HTML 表格未与 CSS 正确对齐

jquery - Bootstrap V4 模态效果背景不稳定

html - Bulma:如何在移动设备上定义堆栈顺序

reactjs - React Material-UI网格系统

html - 如何创建多个 fa-icon

css - 将 Twitter Bootstrap 样式应用于 CodeMirror?

css - Neat 2.0 正在创建 13 列而不是 12 列