【Bootstrap】<前端框架>Bootstrap布局容器&栅格网格系统

简介: 【1月更文挑战第17天】【Bootstrap】<前端框架>Bootstrap布局容器&栅格网格系统

 目录

一、Bootstrap概述:

二、Bootstrap HTML模板:

三、布局容器和栅格网格系统:

1.布局容器:

2.栅格网格系统:

2.1 媒体查询:

2.2 栅格参数:

2.3 列组合:

2.4 列偏移:

2.5 列排序:

2.6 列嵌套:


一、Bootstrap概述:

英文官网:

image.gif编辑

中文官网:

image.gif编辑

image.gif编辑

       Bootstrap响应式布局设计,让一个网站可以兼容不同分辨率的设备。Bootstrapt能提供很好的视觉使用体验!

下载Bootstrap:

image.gif编辑


二、Bootstrap HTML模板:

       请确保使用最新的页面设计和开发标准来设置页面。也就是说,使用 HTML5 文档类型(doctype)、并包含一个设置 viewport(视口)的 <meta> 标签以实现正确的响应式布局行为。这些要求组合在一起之后,你的页面应当如下所示:

       这是V5版本的Bootstrap

<!doctype html>
<html lang="zh-CN">
  <head>
    <!-- 必须的 meta 标签 -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- Bootstrap 的 CSS 文件 -->
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-LY6QZQpYtqgQLJeUeh2disXkUUa+fRYfq/3dxdpkU5PQZUCqg/BK4wrhQ9idOojx" crossorigin="anonymous">
    <title>Hello, world!</title>
  </head>
  <body>
    <h1>Hello, world!</h1>
    <!-- JavaScript 文件是可选的。从以下两种建议中选择一个即可! -->
    <!-- 选项 1:包含 Popper 的 Bootstrap 集成包 -->
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-3JyvMmfSMpWbSPyCjNwU5lHJFeswLerSwlOGCGjyuhQ+HKQNQKCbIzEgGTP1MfyY" crossorigin="anonymous"></script>
    <!-- 选项 2:Popper 和 Bootstrap 的 JS 插件各自独立 -->
    <!--
    <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.10.2/dist/umd/popper.min.js" integrity="sha384-7+zCNj/IqJ95wo16oMtfsKbZ9ccEh31eOz1HGyDuCQ6wgnyJNSYdrPa03rtR1zdB" crossorigin="anonymous"></script>
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.min.js" integrity="sha384-sy7xrBVBIaMK3slILGYC/U63fKx1UrfD8TRvvm7ofBK58y8tUNR4GWLKo+k+Yx8K" crossorigin="anonymous"></script>
    -->
  </body>
</html>

image.gif

       这是V3版本的Bootstrap:

<!doctype html>
<html lang="zh-CN">
  <head>
    <meta charset="utf-8">
    <!-- X-UA-Compatible来设置IE浏览器兼容模式,最新的渲染模式 -->
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <!-- 
        viewport:表示用户是否可以缩放页面
        width:指定视图区的逻辑宽度
        device-width:指示视区宽度应为设备的屏幕宽度
        initial-scale:指令用于设置web页面的初始化缩放比例
        initial-scale=1:将显示未经缩放的web文档
     -->
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! -->
    <title>Bootstrap 101 Template</title>
    <!-- Bootstrap -->
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css" integrity="sha384-HSMxcRTRxnN+Bdg0JdbxYKrThecOKuH5zCYotlSAcp1+c8xmyTe9GYg1l9a69psu" crossorigin="anonymous">
    <!-- HTML5 shim 和 Respond.js 是为了让 IE8 支持 HTML5 元素和媒体查询(media queries)功能 -->
    <!-- 警告:通过 file:// 协议(就是直接将 html 页面拖拽到浏览器中)访问页面时 Respond.js 不起作用 -->
    <!--[if lt IE 9]>
      <script src="https://cdn.jsdelivr.net/npm/html5shiv@3.7.3/dist/html5shiv.min.js"></script>
      <script src="https://cdn.jsdelivr.net/npm/respond.js@1.4.2/dest/respond.min.js"></script>
    <![endif]-->
  </head>
  <body>
    <h1>你好,世界!</h1>
  </body>
    <!-- jQuery (Bootstrap 的所有 JavaScript 插件都依赖 jQuery,所以必须放在前边) -->
    <script src="https://cdn.jsdelivr.net/npm/jquery@1.12.4/dist/jquery.min.js" integrity="sha384-nvAa0+6Qg9clwYCGGPpDQLVpLNn0fRaROjHqs13t4Ggj3Ez50XnGQqc/r8MhnRDZ" crossorigin="anonymous"></script>
    <!-- 加载 Bootstrap 的所有 JavaScript 插件。你也可以根据需要只加载单个插件。 -->
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js" integrity="sha384-aJ21OjlMXNL5UyIl/XNwTMqvzeRMZH2w8c5cRVpzpU8Y5bApTppSuUkhZXN0VxHd" crossorigin="anonymous"></script>
</html>

image.gif


三、布局容器和栅格网格系统:

1.布局容器:

.container 用于固定宽度并支持响应式布局的容器:

<div class="container"> ... </div>

image.gif

.container-fluid 用于100%宽度,占据全部视口(viewport)的容器:

<div class="container-fluid"> ... </div>

image.gif

2.栅格网格系统:

       Bootstrap提供了一套响应式、移动设备优先的流式栅格系统,随着屏幕或者视口(viewport)尺寸的增加,系统会自动分为最多12列。栅格系统用于通过一系列的行(row)与列(column)的组合来创建页面布局,内容就可以放入这些创建好的布局中。

       网格系统的实现原理非常简单,仅仅是通过定义容器大小,平分12份(也有平分24份或者32份,但是12份是最常见的),再调整内外边距,最后结合媒体查询,就制作出了强大的相应式网格系统。Bootstrap框架中的网格系统就是将容器平分成为12份。

image.gif编辑

注意:使用网格系统必须使用到CSS,引入Bootstrap的CSS文件

       container、row、xs(xsmall phones)、sm(small tables),md(middle desktops),lg(larger desktops)即:超小屏(自动),小屏(750px),中屏(970px),大屏(1170px)

       数据行(.row)必须包含在容器(.container)中,以便为其赋予合适的对齐方式和内距(padding)

       在行(.row)中可以添加列(.column),只有列(column)才可以作为行容器(.row)的直接子元素,但列数之和不能超过平分的总列数,比如12。如果大于12,则自动换到下一行。

       具体内容应当放置在列容器(column)之内:

<div class="container">
    <div class="row">
        <div class="col-md-4" style="background-color: blueviolet;">4列</div>
        <div class="col-md-8" style="background-color: cadetblue;">8列</div>
    </div>
</div>

image.gif

image.gif编辑

2.1 媒体查询:

       Bootstrap会根据当前屏幕尺寸动态调整CSS中编写的尺寸样式!

image.gif编辑

2.2 栅格参数:

image.gif编辑

2.3 列组合:

       列组合简单理解就是改变数字来合并列(原则:列总和数不能超过12,大于12,则自动换到下一行),类似于表格的colspan属性:

<div class="container">
      <div class="row">
        <div class="col-md-4" style="background-color: blueviolet;">4列</div>
        <div class="col-md-8" style="background-color: cadetblue;">8列</div>
      </div>
      <hr>
      <div class="row">
        <div class="col-md-3" style="background-color: blueviolet;">3列</div>
        <div class="col-md-3" style="background-color: cadetblue;">3列</div>
        <div class="col-md-3" style="background-color: rgb(255, 0, 0);">3列</div>
      </div>
      <hr>
      <!-- 超过12列,则会出现换行!!! -->
      <div class="row">
        <div class="col-md-8" style="background-color: blueviolet;">8列</div>
        <div class="col-md-8" style="background-color: cadetblue;">8列</div>
      </div>
    </div>

image.gif

image.gif编辑

2.4 列偏移:

       如果我们不希望相邻的两个列紧靠在一起,但是又不想使用margin或者其它的技术手段。这个时候可以使用列偏移(offset)功能来实现。使用列偏移也非常简单,只需要在列元素上添加类名" col-md-offset-* "(其中星号代表要偏移的列组合),那么具有这个类名的列就会向右偏移。但是需要保证列与偏移列总数不超过12,不然会导致列断行(换行显示)

<div class="container">
      <div class="row">
        <div class="col-md-1" style="background-color: cornflowerblue;">1列</div>
        <div class="col-md-2" style="background-color: rgb(123, 255, 0);">2列</div>
        <!-- 这里有一个8列的列偏移 -->
        <div class="col-md-1 col-md-offset-8" style="background-color: rgb(0, 89, 255);">1列</div>
        <!-- 由于上面的已经满足12列,所以这一列被换行显示 -->
        <div class="col-md-1" style="background-color: rgb(221, 0, 255);">1列</div>
      </div>
    </div>

image.gif

image.gif编辑

2.5 列排序:

       列排序其实就是改变列的方向,就是改变左右浮动,并且设置浮动的距离。在Bootstrap框架的网格系统中是通过添加类名" col-md-push-* " 和 " col-md-pull-* " (其中星号代表移动的列组合数),往前pull,往后push

<div class="container">
      <div class="row">
        <div class="col-md-6" style="background-color: cornflowerblue;">6列</div>
        <!-- col-md-pull-4:向前浮动4列 -->
        <div class="col-md-3 col-md-pull-4" style="background-color: cyan;">3列</div>
      </div>
    </div>
  </body>

image.gif

image.gif编辑

2.6 列嵌套:

       Bootstrap框架的网格系统还支持列的嵌套。你可以在一个列中添加一个或者多个行(row)容器,然后在这个行容器中插入列

image.gif编辑


相关文章
|
1月前
|
前端开发 容器
【前端】1、flex 布局详解
【前端】1、flex 布局详解
42 0
|
2月前
|
机器学习/深度学习 存储 算法
基于Flask+Bootstrap+机器学习的世界杯比赛预测系统
基于Flask+Bootstrap+机器学习的世界杯比赛预测系统
55 0
|
2月前
|
机器学习/深度学习 数据采集 算法
基于Flask+Bootstrap+机器学习的南昌市租房价格预测系统(上)
基于Flask+Bootstrap+机器学习的南昌市租房价格预测系统
52 0
N..
|
20天前
|
开发框架 前端开发 容器
Bootstrap栅格系统
Bootstrap栅格系统
N..
9 0
|
30天前
|
Java 容器
Java常用组件、容器与布局
Java常用组件、容器与布局
13 0
|
1月前
|
数据可视化 前端开发
web前端-Echarts-5.3高级可视化和图表组合布局
web前端-Echarts-5.3高级可视化和图表组合布局
|
1月前
|
编解码 前端开发 UED
前端需要完完全全掌握的这些布局方案
前端需要完完全全掌握的这些布局方案
|
1月前
|
编解码 前端开发 JavaScript
现代前端开发中的自适应布局与响应式设计
【2月更文挑战第10天】在当今移动设备和不同屏幕尺寸的普及下,前端开发中的自适应布局和响应式设计变得至关重要。本文将探讨现代前端开发中自适应布局的实现原理、响应式设计的优势以及实际应用中的最佳实践。
|
2月前
|
机器学习/深度学习 数据可视化 Python
基于Flask+Bootstrap+机器学习的南昌市租房价格预测系统(下)
基于Flask+Bootstrap+机器学习的南昌市租房价格预测系统
50 0
N..
|
20天前
|
开发框架 前端开发 UED
Bootstrap的CSS组件
Bootstrap的CSS组件
N..
11 0