从 Bootstrap 4 网格中删除装订线

2024-05-14

在 Bootstrap 4 中,我被要求自定义桌面的默认网格系统,如下所示:

其中,容器&桌面断点为1280px。

我尝试过的例子是:

   

 body {
  margin-top: 3rem;
}

.l-wrap {
  max-width: 1280px;
  margin-right: auto;
  margin-left: auto;
}

.grid-item {
  width: calc((100% - 50px * 11) / 12);
  margin-top: 24px;
  margin-right: 50px;
  float: left;
}

/* For a 3-column grid */
.grid-item:nth-child(1n+12) {
  margin-right: 0;
  float: right;
}

/* Demo purposes */
.grid-item {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 80px;
  text-align: center;
  background: rgba(255, 0, 0, 0.25);
}
<div class="l-wrap">
  <div class="col-grid">
    <div class="grid-item">Grid item</div>
    <div class="grid-item">Grid item</div>
    <div class="grid-item">Grid item</div>
    <div class="grid-item">Grid item</div>
    <div class="grid-item">Grid item</div>
    <div class="grid-item">Grid item</div>
    <div class="grid-item">Grid item</div>
    <div class="grid-item">Grid item</div>
    <div class="grid-item">Grid item</div>
    <div class="grid-item">Grid item</div>
    <div class="grid-item">Grid item</div>
    <div class="grid-item">Grid item</div>
  </div>
</div>

这工作得很好。但我试图在 Bootstrap 中实现同样的目标。

The gutter width is 50px但它就在其中container.

这应该给我一个column width = 61px就像我的排水沟一样50*11 = 550。所以 1280-550/12 = 60.83。

默认情况下,引导程序从任一侧离开装订线。

我尝试过的解决方案

  1. 我尝试分别从第一列和最后一列向左填充和向右填充,使网格列具有不同的宽度(Problem)

  2. 尝试利用SCSSmixin 生成列

@include media-breakpoint-up('lg', $breakpoints) {
   @for $i from 1 through $columns {
      .col#{$infix}-#{$i} {
         padding-right: 0;
         padding-left: 0;
         @include make-col($i, $columns);
      }
   }
}

这样,我可以从任一侧删除填充,然后在其顶部添加自定义 CSS 来实现此行为,但没有success

如果有人能指导如何在 Bootstrap 中实现这一目标,谢谢?


Susy 的容器和装订线的狭窄效果可以在 Bootstrap 中使用三个关键更改轻松实现:

  1. 省略使用container or container-fluid class, 如文档中所述 https://getbootstrap.com/docs/4.1/layout/grid/#no-gutters.

    编辑:如果您需要将容器限制为 1280px,请检查下面的编辑。

  2. 将列的默认内边距设置为每侧 25 像素(因此总共 50 像素),而不是初始的总共 30 像素

  3. 通过将默认值修改为,调整行上的负边距以反映装订线变化-25px每边的边距

所以本质上你的 CSS 是:

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

.col,
[class*="col-"] {
  padding-right: 25px;
  padding-left: 25px;
}

这种方法的一个优点是它的响应能力——它不会锁定任何屏幕尺寸,例如 1280px。这可以在行动中看到jsfiddle 片段 https://jsfiddle.net/siavasfiroozbakht/syrv7mab/或以下。在前者中添加了一些用于调试和测试的响应式宽度输出,为简洁起见,在下面的代码片段中省略了这些输出。

编辑:如果您需要将容器大小限制为 1280px,您可以这样做:

@media (min-width: 1280px) {
    .container {
        max-width: 1280px;
        padding-left: 0;
        padding-right: 0;
    }
}

上面的内容将确保当屏幕宽度或更大时容器保持在最大 1280px,或者当屏幕宽度小于 1280px 时坚持默认的 Bootstrap 响应能力。如果您确实希望始终将其设置为 1280 像素,请删除媒体断点并将宽度和最大宽度设置为 1280 像素。

#example-row {
  background: #0074D9;
  margin-top: 20px;
}

.example-content {
  display: flex;
  height: 80px;
  background-color: #FFDC00;
  text-align: center;
  align-items: center;
  justify-content: center;
}

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

.col,
[class*="col-"] {
  padding-right: 25px;
  padding-left: 25px;
}

@media (min-width: 1280px) {
  .container {
    max-width: 1280px;
    padding-left: 0;
    padding-right: 0;
  }
}
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">

<div class="container" id="example-container">
  <div class="row" id="example-row">
    <div class="col-1">
      <div class="example-content">Grid Item</div>
    </div>
    <div class="col-1">
      <div class="example-content">Grid Item</div>
    </div>
    <div class="col-1">
      <div class="example-content">Grid Item</div>
    </div>
    <div class="col-1">
      <div class="example-content">Grid Item</div>
    </div>
    <div class="col-1">
      <div class="example-content">Grid Item</div>
    </div>
    <div class="col-1">
      <div class="example-content">Grid Item</div>
    </div>
    <div class="col-1">
      <div class="example-content">Grid Item</div>
    </div>
    <div class="col-1">
      <div class="example-content">Grid Item</div>
    </div>
    <div class="col-1">
      <div class="example-content">Grid Item</div>
    </div>
    <div class="col-1">
      <div class="example-content">Grid Item</div>
    </div>
    <div class="col-1">
      <div class="example-content">Grid Item</div>
    </div>
    <div class="col-1">
      <div class="example-content">Grid Item</div>
    </div>
  </div>
</div>

所有这些也可以使用 SASS 在源代码中完成 –检查 Bootstrap 文档 https://getbootstrap.com/docs/4.3/layout/overview/#containers对于混合。

最后,如果您确实需要仅针对某些特殊内容对默认大小进行这些更改,请将上面的类更改为新名称(例如.container-1280)并相应地修改 HTML。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 Bootstrap 4 网格中删除装订线 的相关文章

  • 检查元素是否在视口的 30% 到 60% 之间

    我正在尝试改变颜色 li 当元素占视口的 30 到 60 之间时 所以我有这个元素网格并排堆叠 如下所示 我遇到了一些插件 例如 Waypoints Viewport Checker 和其他一些插件 但没有什么好的 任何想法 我正在使用一个
  • HTML 表格信息

    我想知道是否有任何方法可以使 html 中的表格看起来像这样 http i43 tinypic com 21dml8l png http i43 tinypic com 21dml8l png 我基本上需要第一列中的 1 个大单元格 然后第
  • Tailwind CSS:“outline”类不存在。但这不是自定义样式,而是框架类

    在一个新项目中 我得到了奇怪的行为 除了大纲和相关内容之外 一切都按预期进行 https tailwindcss com docs outline style https tailwindcss com docs outline style
  • Bootstrap 3 按钮之间的空间

    如果我将几个 Bootstrap 3 按钮排成一行
  • 背景大小不起作用

    这是我的 CSS banner text BG background 00A7E1 url images sale tag png left center no repeat important background size 20px 2
  • 将 bootstrap img-responsive 类添加到 wagtail WYSIWYG 编辑器

    我试图做到这一点 以便当将正文图像插入页面时 将引导类 img responsive 添加到图像标签中 谁能告诉我如何实现这一目标 您可以通过图像格式来做到这一点 http docs wagtail io en v0 8 5 core co
  • CSS 属性选择器中的 [att~=val] 与 [att*=val] 有何不同?

    也许我错过了一些东西 但它们看起来很相似 例如 如果您使用 a alt thumb or a alt thumb 我可以通过哪些不同方式缩小选择范围 我的理解是 为您提供了引号中的部分匹配 而 为您提供了部分匹配 我将稍微修改一下代码 但由
  • ie11 中的 SVG 问题

    我有一个 div 其高度设置为 320 像素 然后它的子元素宽度设置为 100 它的子文件是一个 SVG 文件 我将其宽度设置为容器的 200 在运行良好的 Chrome 和 Firefox 中 我得到了如下所示的漂亮图像 HTML 看起来
  • SASS for 循环更新 hsla 亮度返回错误 $lightness: "96.77419" 不是 `hsla' 的数字

    我试图循环一定次数 逐渐降低 hsla 的亮度值 但是当我运行循环时 出现错误 lightness 96 77419 is not a number forHSLA 谁能告诉我哪里出了问题或者如何改进 Code iterations 31
  • 生成基于内联 HTML 样式的样式表?

    一段时间以来 我一直致力于对网站的不同部分进行样式设计 但是我尚未将内联样式放入样式表中 我想知道是否存在一个工具可以解析 HTML 文件并从中生成样式表 例如 这是我网站的一个片段 div class block style border
  • Bootstrap 4 正在破坏 Stripe Elements

    我正在尝试将 Stripe 与我的 Laravel 网站集成 为了做到这一点 我正在遵循他们网站上的文档 https stripe com docs stripe js elements quickstart https stripe co
  • 我应该使用媒体查询来定位哪些设备/推荐尺寸?

    我是响应式网页设计的新手 并且感到困惑 因为对于使用哪些媒体查询以及要定位哪些设备有不同的偏好 有标准吗 我想定位 iPhone iPad 和其他流行设备 我在网上找到了这个 Smartphones portrait and landsca
  • CSS 背景在 iOS 中拉伸以填充高度,但滚动上有空白

    这个 CSS 让我的背景在 iOS 中填充 100 的屏幕高度 但有一个小问题 当你向下滚动时 最初有空白 然后当你松开手指并停止滚动时 背景图像会 调整 并填充 100再次屏幕高度的 如果您继续滚动 该问题不会在同一页面上再次出现 只是第
  • Sitecore 多种 RTE 类样式

    我可以为 RichTextEditor RTE 添加 CSS 样式路径 如下所示 并且我可以在 RTE 中选择定义的样式
  • 如何更改 R Markdown HTML 文档中目录的颜色和属性?

    我花了很多时间谷歌搜索这个 但似乎无法弄清楚 我正在使用 R Markdown 制作 HTML 文档 文档在这里 http rmarkdown rstudio com html document format html http rmark
  • 使用 ember.js 模板的 Bootstrap Popovers

    我正在尝试使用引导程序弹出窗口 http twitter github io bootstrap javascript html popovers使用 EmberJS 这样弹出窗口的内容将是 ember handlebars 模板 带有绑定
  • css 变换,chrome 中的锯齿状边缘

    我一直在使用 CSS3 转换来旋转网站中带有边框的图像和文本框 问题是 Chrome 中的边框看起来呈锯齿状 就像没有抗锯齿的 低分辨率 游戏一样 在 IE Opera 和 FF 中看起来好多了 因为使用了 AA 仍然清晰可见 但也没有那么
  • 不透明度如何影响元素顺序?

    我发现 CSS 有一个非常奇怪的行为opacity与浮动元素相结合 考虑以下 HTML div div Right button div div div Overlay div 最后div将覆盖前两个浮动的 删除不透明度会将最新的 div
  • Bootstrap 响应式图像缩放

    Using Twitter Bootstrap我意识到默认情况下它会响应式地缩放图像 这很棒 但并不总是完美的 比如说我有一个500x300桌面上的图像 然后它会针对移动设备调整大小 该图像将非常小而且不是很高 会丢失图像的大部分细节部分
  • 管道符 (|) 和脱字符号 (^) 属性选择器有什么区别?

    At W3学校 http en wikipedia org wiki W3Schools他们声明两者 http www w3schools com cssref sel attribute value lang asp and http w

随机推荐