You need to enable JavaScript to run this app. 如何用纯CSS实现Bootstrap栅格div仅相邻侧显示分隔边框
优惠活动
大模型
产品
解决方案
定价
更多

如何用纯CSS实现Bootstrap栅格div仅相邻侧显示分隔边框

纯CSS实现栅格相邻边加边框方案

核心思路

完全靠原生CSS选择器的匹配规则实现,不需要修改原有栅格HTML结构,只在列与列、行与行的衔接位置加边框,从规则层面避开整组栅格的外围边框。

可直接复用的CSS代码

/* 列基础重置:提前铺设等宽透明边框,避免加实色边框时撑破原有栅格布局 */
.row > [class*='col-'] {
  border: 1px solid transparent;
}

/* 匹配所有存在左侧相邻元素的列,为其加上实色左边框 */
.row > [class*='col-'] + [class*='col-'] {
  border-left-color: #dcdfe6;
}

/* 适配多行栅格场景,匹配所有存在上侧相邻元素的列,为其实加上边框
   对应col-md-3每行4列的规则,其他列数按需调整nth-child参数即可 */
.row > [class*='col-']:nth-child(4n+5) {
  border-top-color: #dcdfe6;
}

无外围边框的实现原理

  • 利用相邻兄弟选择器+的匹配特性,只会选中前面有同排兄弟节点的列,每一排的第一个列因为没有前置兄弟,永远不会触发左边框规则,自然不会在栅格最左侧生成外边框
  • 左边框只加在相邻列的衔接位置,每一排最右侧的列后面没有同排兄弟,不会给右侧补加边框,自然不会在栅格最右侧生成外边框
  • 上边框只加在换行后的首列上,第一排的列因为没有上一行的相邻节点,永远不会触发上边框规则,自然不会在栅格最顶部生成外边框
  • 最后一排的列下方没有其他行的节点,不需要额外设置下边框,自然不会在栅格最底部生成外边框

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.11.10 23:45:11