css 3.3.7“行引导”导致水平滚动条

r7xajy2e  于 2022-12-05  发布在  其他
关注(0)|答案(7)|浏览(913)

好吧,好吧,我知道。这个问题已经问了很多次了。但是,到目前为止,我还没有找到一个有效的解决方案。我把我的页面浓缩成这样:

<div class="row">
    <div class="col-sm-12">
        stuff
    </div>
</div>

而且还有一个水平滚动条,在dev工具中,我可以找到row

.row {
    margin-right: -15px;
    margin-left: -15px;
}

如果我取消点击margin-right: -15px;,那么问题就消失了。但是,在我的实际页面(包含所有内容)上,这产生了另一个问题。页面需要零边距,但现在右边的边距是15px。
其中一个答案here说要用container-fluid Package row。另一个答案说要用container Package 。这两个答案都让滚动条消失了,但它们也给了页面侧边距,我不能有。
我发现threads早在2013年就讨论过这个问题。这个问题真的还没有解决吗?
我需要做些什么?
还有:小提琴
https://jsfiddle.net/oLx4g8e3/1/

3bygqnnd

3bygqnnd1#

首先你不需要rowcol-*12类,如果你的部分是100%宽的,看看this引导程序的例子,他们没有采用任何rowcol-*12,既没有header也没有jumbotron。如果你的部分有列,就以col-*类中的行为例。

<div class="col-sm-6">
    <div class="row">stuff</div>
</div>
<div class="col-sm-6">
    <div class="row">stuff</div>
</div>

或者如果您使用container-fluid

<div class="container-fluid">
    <div class="row">
        <div class="col-sm-6">
            <div class="row">stuff</div>
        </div>
        <div class="col-sm-6">
            <div class="row">stuff</div>
        </div>
    </div>
</div>

p1iqtdky

p1iqtdky2#

如果有人在Bootstrap v4中遇到这个问题,只需将m-0添加到div中。

<div class="row m-0"></div>
nxagd54h

nxagd54h3#

更简单的方法是删除违规行上的边距:

.row {
    margin-left: 0px;
    margin-right: 0px;
}
bjp0bcyl

bjp0bcyl4#

你是说当容器应该是流动的时候,页面底部出现一个滚动条吗?你的页面中可能有一个元素扩展了屏幕的宽度。
我通常使用this Chrome extension来查看哪些CSS元素扩展得比它们应该扩展得更远。
此外,请查看此Fiddle是否有帮助(下面的代码)。

<div class="container-fluid">
 <div class="row">
  <div class="col-sm-12">
Lorem Ipsum is simply dummied text of the printing and typesetting industry.
  </div>
 </div>
</div>
tvokkenx

tvokkenx5#

我会直接跳到Bootstrap 5,因为这是最新的版本,每个人都在使用它目前。

上次更新日期:2022年12月

在Bootstrap 5.2上进行了测试
在Bootstrap 5.1上进行了测试
在Bootstrap 5.0上进行了测试

引导5

如果你们中的一些人使用Bootstrap 5,你可以使用overflow-hidden来修复这个问题。我认为它可能会帮助其他人。
我的情况是我不得不在container-fluid中使用row,而row没有接触到我浏览器的边缘,这是我想要的。当我添加px-0时,我得到了水平滚动条
在浏览了文档之后,我遇到了overflow-hidden
https://getbootstrap.com/docs/5.0/layout/gutters/#horizontal-gutters

<div class="container-fluid px-0 overflow-hidden">
    <div class="row">
        <div class="col-12">
            <!-- your text -->
        </div>
    </div>
</div>
siotufzp

siotufzp6#

你为什么不使用容器液体和完全删除边缘?

<div class="container-fluid" style="margin: 0">
   <div class="row">
      <div class="col-md-6">

      </div>
      <div class="col-md-6">

      </div>
   </div>
</div>

或者使用width: 100%围绕它创建自己的div

nvbavucw

nvbavucw7#

在我的特定情况下,我必须将.container从“width:100%”到“宽度:首字母”。

.container {
    width: initial;
  }

如果需要保持宽度:100%,您或许还可以尝试确定框大小:边框;

.container {
    box-sizing: border-box;
  }

相关问题