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

Bootstrap <li>元素无法自动换行问题技术求助

解决Bootstrap侧边栏
  • 元素无法自动换行的问题
  • 嘿,刚好碰到过类似的情况!你这个问题大概率是Bootstrap导航组件的默认样式限制了文本换行,或是容器宽度不够导致的,给你几个实用的解决办法:

    1. 自定义CSS强制开启换行

    Bootstrap的.nav-pills系列组件默认会设置white-space: nowrap来避免文本换行,我们可以通过自定义类轻松覆盖这个行为:

    先在你的样式文件里添加这段代码:

    /* 给侧边栏菜单的li元素添加换行支持 */
    .sidebar-menu-item {
      white-space: normal; /* 取消默认的不换行限制 */
      word-wrap: break-word; /* 让过长单词自动拆分换行 */
      overflow-wrap: break-word; /* 兼容更多浏览器环境 */
    }
    

    然后修改你的HTML代码,给目标

  • 加上这个自定义类:

    <!-- Brands 菜单区域 -->
    <div class="row m-t-1 p-l-1">
      <h5 class="font-bold">{{brandsTitle}}</h5>
      <ul class="nav nav-pills nav-stacked f-1pt2" *ngFor="let menu of brandsMenu">
        <li class="m-b-pt5 sidebar-menu-item">{{menu.type}}</li>
      </ul>
    </div>
    
    <!-- Washers 菜单区域 -->
    <div class="row m-t-1 p-l-1">
      <h5 class="font-bold">{{washersTitle}}</h5>
      <ul class="nav nav-pills nav-stacked f-1pt2 line-ht-1pt5" *ngFor="let menu of washersMenu">
        <li class="m-b-pt5 sidebar-menu-item">{{menu.type}}</li>
      </ul>
    </div>
    

    2. 确保侧边栏容器有足够宽度

    如果你的侧边栏父容器被设置得太窄,或是被其他元素挤压,文本会因为没有足够空间而无法换行。检查一下包裹这些row的侧边栏容器,给它设置合适的宽度:

    .sidebar-container {
      width: 260px; /* 根据你的布局需求调整数值 */
      min-width: 200px; /* 设置最小宽度,避免窗口缩小时过度挤压 */
    }
    

    3. 排查自定义样式冲突

    有时候自己写的自定义类(比如你用的f-1pt2、line-ht-1pt5)可能无意中设置了white-space: nowrap或overflow: hidden。可以按下F12打开浏览器开发者工具,选中对应的

  • 元素,查看「样式」面板里的white-space属性,看看是不是被其他样式覆盖了,再针对性调整即可。

    这样操作后,应该就能解决

  • 无法自动换行的问题啦!

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

  • 相关产品推荐
    方舟 Agent Plan

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

    最近更新时间:2026.05.25 06:48:06