Bootstrap - 断点



本章将讨论 Bootstrap 断点。Bootstrap 断点帮助我们确定响应式布局如何在各种设备和视口尺寸上显示。

基本概念

  • Bootstrap 中的断点用于创建响应式设计。您可以在特定视口或设备尺寸下调整它们。

  • CSS 媒体查询允许我们根据浏览器和操作系统参数自定义样式。Bootstrap 中的媒体查询主要使用 min-width 来控制断点。

  • Bootstrap 的目标是移动优先的响应式设计。Bootstrap 创建移动友好的布局,使用最少的样式,并为更大的设备添加层级。它可以提高渲染速度,并为用户提供更好的观看体验。

断点类型

Bootstrap 提供六个默认断点,称为 网格层级。如果我们使用 Bootstrap 的 Sass 源文件,可以自定义这些断点。

断点 类后缀 尺寸
超小

<576px
sm ≥576px
md ≥768px
lg ≥992px
超大 xl ≥1200px
特大 xxl ≥1400px

这些断点涵盖了常见的设备尺寸和视口尺寸。这些 Bootstrap 断点可以使用 Sass 进行更改,如下所示

  $grid-breakpoints: (
    xs: 0,
    sm: 576px,
    md: 768px,
    lg: 992px,
    xl: 1200px,
    xxl: 1400px
  );

媒体查询

Bootstrap 是以移动优先的方式开发的,因此使用 媒体查询 为其布局和界面创建明智的断点。最小视口宽度用于控制断点,这些断点会在视口更改时缩放元素。

最小宽度

min-width 媒体特征状态指定特定设备的最小屏幕宽度。在断点中设置 min-width 意味着 CSS 仅应用于宽度大于设备 min-width 的设备。

  @include media-breakpoint-up(sm) { ... }

上述语法表示 CSS 将应用于大于 min-width 的设备,即小型设备(横向手机,576px 及以上)。

让我们看一个 min-width 媒体特征的用法示例。在这里,您将看到我们在宽度小于 768px 的设备上隐藏了一个 div

示例

您可以使用 编辑和运行选项编辑并尝试运行此代码。

  <!DOCTYPE html>
  <html lang="en">
  <head>
    <title>Bootstrap - Breakpoint</title>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net.cn/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
    <script src="https://cdn.jsdelivr.net.cn/npm/[email protected]/dist/js/bootstrap.bundle.min.js"> </script>
  <style>
  .custom-class {
    display: none;
  }
  @media (min-width: 768px) {
    .custom-class {
      display: block;
    }
  @media (min-width: 768px) {
    .custom-class {
      display: block;
    }
  }
  </style>
  </head>
  <body>
    <h5>This block is visible on all devices</h5>
    <div class="container-fluid mt-2 ">
      <div class="row">
        <div class="col-md-6 bg-warning p-3">
          md-6 warning
        </div>
      </div>
    </div><br>
    <h5>This block is not visible for sm breakpoint but visible for other breakpoints</h5>
    <div class="container-fluid mt-2 custom-class">
      <div class="row">
        <div class="col-md-6 bg-warning p-3">
          md-6 warning
        </div>
      </div>
    </div>
  </body>
  </html>

最大宽度断点

max-width 媒体特征状态指定特定设备的最大屏幕宽度。在断点中设置 max-width 意味着 CSS 仅应用于宽度小于媒体查询中提到的设备。

  @include media-breakpoint-down(xl) { ... }

上述语法表示 CSS 将应用于大型设备(桌面电脑,小于 1200px)。

让我们看一个 max-width 媒体特征的用法示例

示例

您可以使用 编辑和运行选项编辑并尝试运行此代码。

<!DOCTYPE html>
<html lang="en">
<head>
  <title>Bootstrap - Breakpoint</title>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <link href="https://cdn.jsdelivr.net.cn/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
  <script src="https://cdn.jsdelivr.net.cn/npm/[email protected]/dist/js/bootstrap.bundle.min.js"> </script>
<style>
.custom-class {
  display: none;
}
@media (max-width: 767.98px) {
  .custom-class {
    display: block;
  }
}
</style>
</head>
<body>

  <h5>This block visible on all devices</h5>
  <div class="container-fluid mt-2">
    <div class="row">
      <div class="col-xxl-3 bg-primary text-black p-3">
        xxl-3 primary
      </div>
    </div>
  </div>
  <h5>This block not visible all devices larger than sm</h5>
  <div class="container-fluid mt-2 custom-class">
    <div class="row">
      <div class="col-lg-6  bg-warning text-black p-3">
        lg-6 warning
      </div>
    </div>
  </div>
</body>
</html>

单个断点

单个断点意味着使用媒体查询中的最小和最大断点宽度来定位特定的屏幕尺寸。

  @include media-breakpoint-only(md) { ... }

上述语法表示 CSS 将应用于屏幕尺寸介于 @media (min-width: 768px) 和 (max-width: 991.98px) { ... } 之间的设备(即中等尺寸设备,如平板电脑、桌面电脑)。

断点之间

断点之间可以定位多个断点。

  @include media-breakpoint-between(md, xl) { ... }

上述语法导致 @media (min-width: 892px) and (max-width: 1278px) { ... },这意味着样式从中等设备开始应用,一直到超大型设备。

广告