【问题标题】:Breakpoints aren't working as expected断点未按预期工作
【发布时间】:2018-06-19 09:47:15
【问题描述】:

我试图了解如何阻止断点将“联系人”菜单项向下敲到下一行。这是link to the page

我想让汉堡出现,而不是在页面小于 1065 像素时将联系人菜单项敲到下一页。

使用更少并设置变量:

变量更少:

@mobile: 800px;
@tablet: 900px;
@desktop: 1300px;

@grid-columns: 12;
@grid-gutter-width: @space;

@grid-float-breakpoint: @mobile;
@grid-float-breakpoint-max: (@grid-float-breakpoint - 1);

HTML 导航

<nav class="container lg nav">
<div class="hamburger-wrap js-toggle-menu">
    Menu
    <div class="hamburger"></div>
</div>
<a href="/" class="logo fl">{{ site_name }}</a>
<span class="panel">

{{ nav from="/" include_home="false" include_entries="true" exclude_from_navigation:isnt="true" }}
    {{ if has_entries }}
        <span class="dropdown js-dropdown">
            <span class="dropdown-trigger {{ if is_current or is_parent }}active{{ /if }}">{{ tag:nav_title or title }}</span>
            <span class="dropdown-content">
                <a href="{{ url }}">All</a>
                {{ *recursive children* }}
            </span>
        </span>
    {{ else }}
    <a {{ if is_current or is_parent }} class="active"{{ /if }} href="{{ page_link or url_link or get:url }}" {{ if target }}target="_blank"{{ /if }}">
        {{ tag:nav_title or title }}
    </a>
    {{ /if }}
{{ /nav }}

        </span>

【问题讨论】:

  • 你应该给你的导航项一个固定的宽度,以正确计算你的断点。否则你需要 JavaScript 来计算宽度。

标签: html css less breakpoints


【解决方案1】:

您的汉堡菜单设置为在媒体查询最小值上使用您的@tablet 分辨率可见。我通过检查你的页面得到了这个:

@media (max-width: 900px) {
    .nav .hamburger-wrap {
        display: block;
        position: fixed;
        top: 22px;
        right: 30px;
        bottom: auto;
        left: auto;
        z-index: 2;
        padding-right: 25px;
        line-height: 1;
        text-transform: uppercase;
        letter-spacing: 1px;
        font-weight: 500;
    }
}

这意味着在任何大于 900 像素的窗口上,汉堡包将被隐藏,而常规桌面菜单将可见 - 如您所见,当空间不足时将其呈现为两行。

使用@desktop 变量更改您的less 文件以显示它将显示最大为1300 像素宽的屏幕的汉堡包。它应该可以解决问题。

【讨论】:

  • 谢谢你,Fernanda 但我试过了,它所做的就是在屏幕大于 1300 像素时让导航消失。我在本地编辑这个。但在我检查代码后,它说的是@media (min-width: 1300px),而不是你说的。
  • @Jamie 确保您对常规导航 汉堡菜单使用相同的媒体查询。否则你会在它们的隐藏/可见状态之间有很大的差距。
  • 也许您应该使用 CTRL+F5 或其他方式清除浏览器缓存。
  • 我在 Mac 上,所以我必须使用 cmd + R 来强制刷新。当我做你的解决方案时@FernandaParisi 谢谢你:)。
猜你喜欢
  • 1970-01-01
  • 2016-01-23
  • 2016-01-29
  • 1970-01-01
  • 2015-10-26
  • 1970-01-01
  • 2019-09-04
  • 1970-01-01
  • 2021-06-04
相关资源
最近更新 更多