Bootstrap5 通宽三列行出现水平滚动条问题咨询
问题原因
你当前的代码不符合Bootstrap网格系统的规范,缺少外层容器包裹.row元素:
- Bootstrap所有的
.row必须嵌套在.container(固定宽度)或.container-fluid(全屏宽度)中使用。.row自带左右负margin,用于抵消内部.col的左右padding,当.row没有外层容器限制时,负margin会导致元素整体宽度超出视口,触发水平滚动条。 - 该问题和Firefox版本、Bootstrap版本无关,你在Bootstrap4中未遇到是因为此前的代码默认添加了外层容器,属于写法疏漏。
修复方案
给.row外层添加对应容器即可,修复后代码如下:
<!DOCTYPE html> <html lang="fr"> <head> <title>youpi</title> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-F3w7mX95PdgyTmZZMECAngseQB83DfGTowi0iMjiWaeVhAn4FJkqJByhZMI3AhiU" crossorigin="anonymous"> </head> <body> <div class="container-fluid"> <!-- 需固定宽度替换为container即可 --> <div class="row"> <div class="col-md-4">hey</div> <div class="col-md-5">hey</div> <div class="col-md-3">hoo</div> </div> </div> </body> </html>
如果不需要列的左右padding,也可以给.row添加.gx-0类取消水平间距,同样可以消除滚动条,但会导致列内容贴边,仅适合特定场景使用。
内容的提问来源于stack exchange,提问作者Julien Palard
相关产品推荐
相关产品推荐

