<p>Bootstrap 4 不支持 CSS 自定义变量(如--bs-xxx),分页、分割线样式需通过覆盖类或更具体选择器硬编码修改;.dropdown-divider 依赖 height:0 + border-top 实现,调整间距需同步改 margin 和 border-top-width;.border-* 工具类无扩展变体,改粗细颜色须用 !important 覆盖;响应式调整需媒体查询重置 margin 而非删类。</p>

Bootstrap 4 没有 --bs-pagination-margin-x 这类变量,别白费劲找
Bootstrap 4 的分页、分割线(如 .dropdown-divider、.border-bottom 类)全部靠硬编码 CSS 实现,不暴露 CSS 自定义变量。你搜到的 --bs-xxx 是 Bootstrap 5.3+ 才有的东西,在 v4 里写 :root { --bs-divider-margin-y: ... } 完全无效,浏览器会直接忽略。
真正能改的地方只有两个:一是覆盖现有类的 margin / border 声明;二是用更具体的选择器压制默认样式。所有修改必须放在 Bootstrap CSS 加载之后,否则会被覆盖。
.dropdown-divider 的上下边距不能只调 margin,得盯住 height 和 margin 组合
Bootstrap 4 的 .dropdown-divider 默认是 height: 0; margin: 0.5rem 0; overflow: hidden; border-top: 1px solid #e9ecef;。它不是用 border-bottom,而是靠 border-top + height: 0 实现“一条线”。所以:
- 想加高间距?只改
margin不够——margin-top和margin-bottom各加0.75rem,比默认多0.25rem - 想让线变粗?必须同时改
border-top-width和margin,否则粗线会和上下菜单项贴太近。例如设border-top-width: 2px,建议把margin改成0.875rem 0 - 别碰
height——设成非零值会让线变成块状,破坏下拉菜单的紧凑感
推荐写法:
立即学习“前端免费学习笔记(深入)”;
.dropdown-divider {
margin: 0.875rem 0;
border-top-width: 2px;
}
.border- 工具类无法直接调粗细,必须重写 border 声明
Bootstrap 4 的 .border-bottom、.border-right 等工具类,底层是固定写死的:border-bottom: 1px solid #dee2e6 !important;。你加 .border-bottom-2 是没用的——v4 根本没定义这类扩展类。
要改粗细或颜色,只能手动覆盖:
- 针对全局:写
.border-bottom { border-bottom-width: 2px !important; } - 针对局部(比如只改某个卡片底部分割线):用更具体选择器,如
.card .card-divider { border-bottom: 2px solid #adb5bd; },再给元素加class="card-divider" - 颜色别只改
border-color——如果原色用了!important,你也得带上,不然赢不了权重
注意:!important 在这里不是坏习惯,而是 v4 工具类自带 !important 的必然结果。不加,你的样式大概率被无视。
响应式分割线边距容易错位,@media 里必须重置 margin 而非删类
Bootstrap 4 不支持 border-md-0 或 my-md-0 这种断点级工具类。你想在小屏隐藏分割线的上下空隙?不能靠 my-0 d-md-block 这类组合——d-md-block 对 .dropdown-divider 无效,它本来就是块级伪元素。
正确做法是用媒体查询主动归零:
@media (max-width: 767.98px) {
.dropdown-divider {
margin: 0.5rem 0; /* 恢复默认值,别设 0 —— 太紧 */
}
.card .card-divider {
margin-bottom: 0.375rem;
}
}关键点:不要设 margin: 0,小屏下内容密度高,完全去掉空隙反而导致视觉粘连。留一点余量(如 0.375rem)比“彻底清除”更稳妥。
v4 的盒模型和 flex 行为不如 v5 稳定,所有分割线相关的改动,务必在真机或 Chrome 设备模拟器里验证高度是否一致、是否被父容器裁掉——尤其当它嵌在 .input-group 或 .list-group 里时。


















