【发布时间】:2016-03-14 15:21:33
【问题描述】:
我希望我最外层的 div 容器只是用于 md 和 lg 的“容器”,而用于 xs 和 sm 的容器流体。我可以在本地实现这一点吗?我需要一些额外的 CSS 吗?
谢谢。
【问题讨论】:
标签: twitter-bootstrap bootstrap-4
我希望我最外层的 div 容器只是用于 md 和 lg 的“容器”,而用于 xs 和 sm 的容器流体。我可以在本地实现这一点吗?我需要一些额外的 CSS 吗?
谢谢。
【问题讨论】:
标签: twitter-bootstrap bootstrap-4
2020 年更新:
从 Bootstrap 4.4 开始,现在有 responsive containers:
<div class="container-sm">100% wide until small breakpoint</div>
<div class="container-md">100% wide until medium breakpoint</div>
<div class="container-lg">100% wide until large breakpoint</div>
<div class="container-xl">100% wide until extra large breakpoint</div>
原答案:
container 和 container-fluid 在 xs 断点上是相同的,因为它们都是全宽的。要覆盖 sm 断点的宽度,您可以这样做..
@media (max-width: 992px) {
.container {
width: 100%;
}
}
【讨论】:
.container-md 类。容器在 768px 以下是流动的,并且在上面有边距。请参阅文档:getbootstrap.com/docs/4.4/layout/overview/#containers
/* // Small devices (landscape phones, 414px and up) */ @media (min-width: 414px) { .card-columns { -webkit-column-count: 2; -moz-column-count: 2; column-count: 2; } .container { max-width: 95%; } }
Bootstrap 4(.4) 自带:
.container,在每个响应断点设置一个最大宽度
.container-fluid,即所有断点处的宽度:100%
.container-{breakpoint},也就是宽度:100%直到指定
所以,在你的情况下,你可以设置:
<div class="container-md">
为 xs 和 sm(流体)实现 100% 宽度的容器,并在其上方实现部分宽度
【讨论】:
使用 Bootstrap 4
纯CSS:
@media (max-width: 768px) {
.container {
width: 100%;
max-width: none;
}
}
如果你使用 Sass:
@include media-breakpoint-down(md) {
.container {
width: 100%;
max-width: none;
}
}
【讨论】:
如前所述,这是 Bootstrap 4 的解决方案
目前,我们有一个用于xs 视口的全宽边到边流体容器。然后我们为sm、md、lg 等设置了固定大小的容器。
由于sm 视口也被认为是一个小型设备,有时我们也希望在那里拥有全宽的边到边流体容器,就像 xs 一样。
如果您自己从 SCSS 编译 Bootstrap,那么您可以通过删除 max-width 的 sm 断点来简单地覆盖变量 $container-max-widths。 这是一个整洁干净的解决方案我会推荐。
在 Bootstrap 源代码中找到(供应商)_variables.scss:
$container-max-widths: (
sm: 540px, // <-- we are going to remove this line
md: 720px,
lg: 960px,
xl: 1140px
) !default;
复制到您的自定义文件并通过删除 sm 定义行和删除 !default 关键字来覆盖,例如在_my-variables.scss 文件中:
$container-max-widths: (
md: 720px,
lg: 960px,
xl: 1140px
);
详细了解Theming Bootstrap with your own SCSS variables。
如果您不自己编译 Bootstrap,那么您肯定会想要。这是您将在那里找到的全新级别的魔法。
【讨论】:
如果使用 Angular,您可以将 ngClass 与三元一起使用,并且如果 window 小于 lg 的像素断点,则函数返回 true?
main.component.html:
<div [ngClass]="isFluid() ? 'container-fluid' : 'container'">
--your content--
</div>
main.component.ts:
isFluid() {
return $(window).width() < 960;
}
【讨论】: