在Bootstrap 4中禁用列换行

joa*_*tos 2 css html5 flexbox twitter-bootstrap bootstrap-4

我目前面临以下情况:

<div class="row no-gutters">
    <div class="col"></div>
    <div class="col col-auto"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

因此,第一列将占用第二列未填充的可用空间

即[| -------- column1 -------- | | column2 | ]

我的问题是里面的内容column1的宽度大于包含行的宽度。发生的是,不是column1缩小以仍然使两列都适合同一行行,而是column1像填满整个行一样填充整个行col-12column2下降到新行,从而包装了列。

有没有办法防止这种行为,并始终将两列保持在同一行?

Zim*_*Zim 6

通常,flex-nowrap可以在该行上使用该类,以防止在Bootstrap 4中使用col换行。在这种情况下,由于列中的省略号内容太宽,因此无法使用。

由于宽度计算(解释的方式Flexbox,就在这里这里),你应该设置一个widthmin-widthmax-width任意宽度的)flex-grow:1列(col)。

例如,width:0col... 上设置

<div class="row no-gutters">
    <div class="col">
        <h4 class="ellipsis">aaaaaa..</h4>
    </div>
    <div class="col-auto d-flex align-items-center">
        something
    </div>
</div>

.col {
  width: 0;
}
Run Code Online (Sandbox Code Playgroud)

https://www.codeply.com/go/JKLUD0NLn4

另外,不要在同一列上同时使用colcol-auto。在flex-grow:1col,将防止col-auto从萎缩。