html - 带有 block 的响应式导航菜单

标签 html css navigation responsive-design

我想知道如何完成this site有他们的导航 - 在大约 60em 处,它堆叠成 6 个 block ,文本居中,图标在顶部,我想完成同样的事情,当调整到大约 60em 时,我的导航中有 4 到 6 个 block 。

这是一个jsfiddle

感谢您的帮助

  <header class="header">

            <nav class="nav">
        <ul>
                <li>Home</li>
                <li>Home</li>
                <li>Home</li>
                <li>Home</li>
        </ul>
    </nav>


 </header>

CSS

nav {text-align: center;} 
nav ul li { display: inline-block;}

最佳答案

他们正在使用媒体查询。您已经熟悉这些了吗?

它们的断点在 60em。因此,在他们的样式表中,他们有媒体查询,在视口(viewport)小于 60em 的条件下,以不同方式设置相同元素的样式。例如,在带有 nav 类的标记中的 ul 具有此媒体查询条件和结果样式:

@media screen and (max-width: 60em)
header .nav {
width: 100%;
float: left;
}

即当视口(viewport)低于 60em 时,header 元素内具有类 nav 的任何 DOM 元素都将具有 100% 宽度和向左浮动。

编辑

如果您询问如何具体堆叠元素,您可以将它们 float 向左,当元素宽度超过容器的宽度时,它们将分解并下降到内部第一个 float 元素下方容器。所以,如果你有四个元素,你会想用类似的东西来设计它们的样式:

ul.nav li {
float:left;
width:50%;
}

如果这不起作用,请确保您的元素恰好是 50%。边距、边框、内边距都会影响元素的宽度,如果超过 50%,它们就会相互堆叠。如果出于某种原因将它们显示为 table,那么标记(HTML 文件)中的空格也会影响宽度。

我更新了你的 fiddle ,这样你就可以看到一个有效的例子:http://jsfiddle.net/QAEQ3/1/

关于html - 带有 block 的响应式导航菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22871046/

相关文章:

javascript - 运行一次后停止执行函数

html - 背景图片从右边填充

html - 将行高设置为屏幕的百分比

javascript - 对 Bootstrap 下拉项选择执行操作

javascript - React Native 导航子级父级

jquery 检查鼠标是否在元素上

javascript - m 自定义Scrollbar自动滚动问题

javascript - 显示/隐藏功能 - 额外的空白

jquery - 使用下一个/上一个箭头加入导航 - Jquery

php - 如何通过版本 Php 文件将 wordpress 标题导航分成并排?