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

Angular7项目升级Bootstrap至4.3后原有类样式不生效问题求助

故障原因

Bootstrap 4 采用 Flex 布局实现栅格系统,要求 .row 的直接子元素必须是带 .col-* 类的节点,才能触发栅格排列规则。你现有代码中 .row 的直接子节点是 Angular 自定义组件 <app-select>,.col-lg-4 定义在 <app-select> 的内部子节点上,无法被 Bootstrap 4 的栅格样式识别,因此三个区块无法横向并排,只能纵向堆叠。

解决方案

方案1:将 .col-* 类直接加在 <app-select> 节点上

修改后代码如下:

<div class="container">
    <div class="row">
         <app-select class="col-lg-4">
             <div class="bg-info">div one </div>
         </app-select>
         <app-select class="col-lg-4">
             <div class="bg-success">div two</div>
         </app-select>
         <app-select class="col-lg-4">
             <div class="bg-primary">div three</div>
         </app-select>         
    </div>
</div>

如果自定义组件加class后布局异常,可在 <app-select> 组件的样式中添加 :host { display: block; } 保证布局正常。

方案2:将栅格类迁移到 <app-select> 组件的根元素

如果需要组件内部控制栅格宽度,可直接把 col-lg-4 写在 <app-select> 组件的根节点上,父级 .row 即可正常识别栅格规则。

问题现象

问题现象截图

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 16:54:00