在Bootstrap的LESS构建中,有人可以告诉我如何添加第五个设备尺寸——extra large(
col-xl-#
)吗?col-xl-#
)吗?col-xl-{size}
, col-xl-push
, hidden-xl
等。媒体查询断点是1600px;
更新:Bootstrap 4的Alpha版现已发布,具有本地支持超大屏幕的功能。
http://blog.getbootstrap.com/2015/08/19/bootstrap-4-alpha/,但它的超大屏幕的断点仍为1200px。您可以创建另一个 less 文件(例如 bootstrapxl.less),其中包含以下代码,并编译该文件:
@import "bootstrap.less";
// XLarge screen
@screen-xlg: 1600px;
@screen-xlg-min: @screen-xlg;
@screen-xlg-hughdesktop: @screen-xlg-min;
// So media queries don't overlap when required, provide a maximum
@screen-lg-max: (@screen-xlg-min - 1);
//== Container sizes
// Large screen / wide desktop
@container-xlarge-desktop: ((1540px + @grid-gutter-width));
@container-xlg: @container-xlarge-desktop;
// Container widths
//
// Set the container width, and override it for fixed navbars in media queries.
.container {
@media (min-width: @screen-xlg-min) {
width: @container-xlg;
}
}
.make-grid-xlgcolumns() {
// Common styles for all sizes of grid columns, widths 1-12
.col(@index) when (@index = 1) { // initial
@item: ~".col-xlg-@{index}";
.col((@index + 1), @item);
}
.col(@index, @list) when (@index =< @grid-columns) { // general; "=<" isn't a typo
@item: ~".col-xlg-@{index}";
.col((@index + 1), ~"@{list}, @{item}");
}
.col(@index, @list) when (@index > @grid-columns) { // terminal
@{list} {
position: relative;
// Prevent columns from collapsing when empty
min-height: 1px;
// Inner gutter via padding
padding-left: (@grid-gutter-width / 2);
padding-right: (@grid-gutter-width / 2);
}
}
.col(1); // kickstart it
}
.make-grid-xlgcolumns();
.make-grid(xlg);
// Generate the large columns
.make-xlg-column(@columns; @gutter: @grid-gutter-width) {
position: relative;
min-height: 1px;
padding-left: (@gutter / 2);
padding-right: (@gutter / 2);
@media (min-width: @screen-xlg-min) {
float: left;
width: percentage((@columns / @grid-columns));
}
}
.make-xlg-column-offset(@columns) {
@media (min-width: @screen-xlg-min) {
margin-left: percentage((@columns / @grid-columns));
}
}
.make-xlg-column-push(@columns) {
@media (min-width: @screen-xlg-min) {
left: percentage((@columns / @grid-columns));
}
}
.make-xlg-column-pull(@columns) {
@media (min-width: @screen-xlg-min) {
right: percentage((@columns / @grid-columns));
}
}
请注意,上述代码中的.make-grid-xlgcolumns
mixin可以改为在less/minins/grid-framework.less文件中修改.make-grid-columns()
mixin,并添加.col-xlg-
类前缀。
自BS 3.2.0以来,您应该使用autoprefixer确保您的新编译版本具有与原始编译版本相同的浏览器支持,请参见:https://github.com/twbs/bootstrap/issues/13620
要运行新代码的自动修复程序,请将bootstrap.less
文件引用替换为对Gruntfile.js中新的bootstrapxl.less的引用,并在更改后运行grunt dist
。
更新
请注意,上述解决方案仅适用于添加大网格的列类。请参见https://dev59.com/d2Af5IYBdhLWcg3w_W9j#26963773以添加重叠默认网格的列或网格。
.make-grid(xlg);
需要放在@screen-xlg-min
的媒体查询中。@media (min-width: @screen-xlg-min) { .make-grid(xlg); }
- kspearrin@screen-xlg-min
,并非所有变量都被使用,但只是为了与BS定义的网格变量保持一致而声明。 - Bass JobsenTwitter Bootstrap已经更新至V4版本,现在支持更大尺寸设备 --> http://v4-alpha.getbootstrap.com/layout/grid/#grid-options
https://github.com/shenders13/bootstrap-grid-100cols-with-xl-and-xxl
一份包含Bootstrap网格系统的CSS文件,其中还包括xlg(>1500像素宽度)和xxlg(>2000像素宽度)类。该网格系统将父级div分成了100列。