You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Bulma Navbar元素过多右侧溢出,如何实现换行显示?

解决Bulma导航栏元素过多溢出的换行方案

Bulma 默认的 navbar-start 使用 flex 布局且默认不换行,元素过多时会向页面右侧溢出。你可以通过以下方式实现导航栏元素换行:

方法一:自定义CSS强制换行

给导航栏的起始容器添加自定义类,修改flex布局的换行属性即可:

步骤1:修改HTML结构

给 navbar-start 添加自定义类(比如 navbar-start-wrap):

<nav class="is-dark has-background-white">
  <div class="navbar-brand is-hidden-desktop">
    <div class="navbar-burger">
      <span></span>
      <span></span>
      <span></span>
    </div>
  </div>

  <div class="navbar-menu">
    <!-- 添加自定义类 navbar-start-wrap -->
    <div class="navbar-start navbar-start-wrap">
      <div class="navbar-item has-dropdown is-hoverable">
        <span>Text Here</span>
        <div class="navbar-dropdown">
          <a class="navbar-item">Overview</a>
          <a class="navbar-item">Elements</a>
          <a class="navbar-item">Components</a>
          <a class="navbar-item">...</a>
        </div>
      </div>
      <div class="navbar-item has-dropdown is-hoverable">...</div>
      <!-- 更多导航元素 -->
    </div>
    <div class="navbar-end"></div>
  </div>
</nav>

步骤2:添加自定义CSS

.navbar-start-wrap {
  flex-wrap: wrap;
  /* 可选:调整换行后元素的间距 */
  gap: 0.5rem;
}

/* 可选:给下拉菜单容器设置最小宽度,避免换行后挤压变形 */
.navbar-start-wrap .navbar-item.has-dropdown {
  min-width: 120px;
}

方法二:响应式优化(按需选择)

如果希望在不同屏幕尺寸下有差异化表现,可以结合Bulma的响应式断点调整:

  • 桌面端保持紧凑布局,仅在中等及以下屏幕让导航元素换行
  • 极小屏幕仍保留汉堡菜单(你已添加is-hidden-desktop的汉堡按钮)

对应的CSS调整为:

@media (max-width: 1023px) {
  .navbar-start-wrap {
    flex-wrap: wrap;
    gap: 0.5rem;
  }
}

内容的提问来源于stack exchange,提问作者Tikroz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 14:20:33