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

如何在Bootstrap v4中使<hr/>标签在大屏三列布局时自动转为竖线?

实现响应式分隔线:小屏横线,大屏竖线

针对你使用Bootstrap v4的场景,我们可以通过自定义CSS结合Bootstrap响应式断点来实现需求,具体步骤如下:

1. 调整HTML结构

给原有的<hr>标签添加自定义类responsive-divider,同时给需要竖线的列加上position-relative(用于定位伪元素):

<div class="row">
    <div class="col-md-4 col-sm-6 p-4">
        <h2>Have a Question?</h2>
    </div>
    <div class="col-md-4 col-sm-6 text-center p-4 position-relative">
        <hr class="responsive-divider"/>
        <h3>FAQs</h3>
        <p>Get more information about ordering, payments and product delivery.</p>
    </div>
    <div class="col-md-4 col-sm-6 text-center p-4 position-relative">
        <hr class="responsive-divider"/>
        <h3 class="mb-4">Call Us</h3>
        <p>Contact our product specialists</p>
    </div>
</div>

2. 编写自定义CSS

利用Bootstrap的md断点(对应屏幕宽度≥768px),控制不同尺寸下的分隔线样式:

/* 小屏设备下,保持<hr>默认横线样式 */
.responsive-divider {
    margin: 1rem 0;
    border-top: 1px solid rgba(0,0,0,.1);
}

/* 大屏设备(≥768px):隐藏横线,用伪元素生成竖线 */
@media (min-width: 768px) {
    .responsive-divider {
        display: none;
    }
    /* 给第二、第三列添加左侧竖线 */
    .col-md-4.position-relative:not(:first-child)::before {
        content: '';
        position: absolute;
        left: 0;
        top: 15%;
        bottom: 15%;
        width: 1px;
        background-color: rgba(0,0,0,.1);
    }
}

效果说明

  • 小屏(<768px):<hr>正常显示为横线,分隔上下内容;
  • 大屏(≥768px):原有横线隐藏,通过伪元素给除第一列外的列添加左侧竖线,实现三列之间的竖向分隔;
  • 竖线的上下边距(top:15%、bottom:15%)可以根据你的视觉需求调整,颜色和默认<hr>保持一致,保证样式统一。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.23 03:54:29