因为需要写前端,为了省事还是用的网上现成的框架
参考: 菜鸟教程
容器
有两个容器类,分别是.container和.container-fluid
.container类用于创建固定宽度的响应式页面,宽度 (max-width) 会根据屏幕宽度同比例放大或缩小。
而.container-fluid类用于创建一个全屏幕尺寸的容器,容器始终跨越整个屏幕宽度(width 始终为 100%)。
响应式容器
可以使用.container-sm|md|lg|xl类:
| Class | 超小屏幕 <576px | 小屏幕 ≥576px | 中等屏幕 ≥768px | 大屏幕 ≥992px | 特大屏幕 ≥1200px | 超级大屏幕 ≥1400px |
|---|---|---|---|---|---|---|
.container-sm | 100% | 540px | 720px | 960px | 1140px | 1320px |
.container-md | 100% | 100% | 720px | 960px | 1140px | 1320px |
.container-lg | 100% | 100% | 100% | 960px | 1140px | 1320px |
.container-xl | 100% | 100% | 100% | 100% | 1140px | 1320px |
.container-xxl | 100% | 100% | 100% | 100% | 100% | 1320px |
网格系统
Bootstrap的网格系统是响应式的,列会根据屏幕大小重新排列。最多分为12列。
有以下6种类:
| 超小设备 <576px | 平板 ≥576px | 桌面显示器 ≥768px | 大桌面显示器 ≥992px | 特大桌面显示器 ≥1200px | 超大桌面显示器 ≥1400px | |
|---|---|---|---|---|---|---|
| 容器最大宽度 | None (auto) | 540px | 720px | 960px | 1140px | 1320px |
| 类前缀 | .col- | .col-sm- | .col-md- | .col-lg- | .col-xl- | .col-xxl- |
| 列数量和 | 12 | |||||
| 间隙宽度 | 1.5rem (一个列的每边分别 .75rem) | |||||
| 可嵌套 | Yes | |||||
| 列排序 | Yes |
可以看出Bootstrap网格系统的类的命名方式如下:.col-*-*,第一个*表示显示器尺寸,可以用来设置响应式规则,第二个表示这个列的宽度,为1-12的数字,每一行的数字相加为12,或小于12(如果下一个加上就超了的话)。两个参数都可以缺省。
比如 col-md-4 表示中等屏幕及以上占4格,而col-4代表任何未指定的屏幕上都占4格;若没有不带前缀(如-md)的class,则未指定的屏幕上自动呈现100%;若使用不带数字的class,则代表均分当前行的剩余空间。
这些不同的前缀可以组合使用,来规定不同屏幕大小以上的布局。如:
<div class="row g-3">
{% for r in resources %}
<div class="col-12 col-md-6 col-lg-4">
{% include "resource_card.html" with r=r %}
</div>
{% endfor %}
</div>文字排版
默认设置是:font-size 为 16px, line-height 为 1.5。所有的 <p> 元素 margin-top: 0 、 margin-bottom: 1rem (16px)。
通过元素<small>可以创建字号稍微小且颜色稍微浅的文本,可以用在h或者p里面。
| 标签 | 作用描述 | Bootstrap默认样式及相关类说明 |
|---|---|---|
<h1>–<h6> | 标题标签(6级) | 默认字体大小从大到小,带适当margin-bottom。.h1–.h6类可应用于任意标签,模拟标题样式。 |
<p> | 段落 | 默认margin-bottom:1rem,字体继承,简单易读。 |
<a> | 超链接 | 默认蓝色字体带下划线,.link-*系列控制颜色,.disabled禁用样式,:hover颜色加深,.stretched-link让整个父元素区域可点。 |
<button> | 按钮 | 需加.btn类,包含边框、圆角、内边距和背景色,颜色及大小类别有.btn-primary / .btn-lg / .btn-outline-*等。 |
<input>, <textarea>, <select> | 表单控件 | .form-control统一样式,圆角边框,聚焦时阴影,响应式宽度。.form-check-input对应复选框和单选按钮。 |
<label> | 表单标签 | 默认字体粗体,.form-label可增强样式和间距。 |
<form> | 表单 | 本身无样式,配合.needs-validation和自定义校验相关类增强交互。 |
<fieldset> | 表单分组 | 有默认边框和间距,.border和.p-*可以调整边框和内边距。 |
<legend> | 字段集标题 | 默认字体较大且加粗,带下方间距。 |
<img> | 图片 | .img-fluid使图片响应式(max-width:100%,height:auto)。.rounded, .rounded-circle设置圆角或圆形。.img-thumbnail带边框。 |
<ul>, <ol> | 无序、有序列表 | 默认带缩进和点/数字,.list-unstyled移除点和缩进,.list-inline内联排列,.list-inline-item内联列表项。 |
<li> | 列表项 | 继承父列表样式,支持.list-group-item用于列表组组件。 |
<table> | 表格 | 需加入.table类,提供基础样式(边框、内边距、横条纹),.table-striped条纹行,.table-hover悬停变色,.table-bordered边框完整表格。 |
<thead> | 表头 | 表格头部,默认加粗文本。 |
<tbody> | 表体 | 正文行包裹,无样式。 |
<tr> | 表格行 | 继承上下文样式,如悬停或条纹。 |
<th> | 表头单元格 | 加粗且居中,.text-center等文本居中类可用。 |
<td> | 表格单元格 | 默认左对齐,带内边距。 |
<div> | 块级容器 | 本身无样式,但Bootstrap大量利用.container, .row, .col-*实现响应式网格系统。 |
<span> | 行内容器 | 无样式,常用于搭配颜色。 |
<nav> | 导航容器 | Bootstrap里常用.navbar类附加导航条丰富样式和交互。 |
<header> | 页头区域 | 无默认,常配合.bg-*, .p-*类定义背景和内边距。 |
<footer> | 页脚区域 | 同上,配合辅助类自定义。 |
<section> | 语义区块 | 无默认样式,方便结构划分。 |
<article> | 文章区域 | 语义化区块,无默认样式。 |
<aside> | 边栏/辅助内容 | 语义化侧边栏,无默认样式。 |
<hgroup> | 标题组(HTML5较少用) | 无默认Bootstrap样式,包含多个标题一起时使用。 |
<blockquote> | 引用块 | .blockquote类添加左侧边线、斜体样式和间距。.blockquote-footer用于引用来源。 |
<code> | 代码片段 | .code类添加灰色背景及细边框,字体等宽。.pre用于多行代码块。 |
<pre> | 预格式化文本 | 显示等宽字体和换行格式,.pre-scrollable添加内部滚动条。 |
<small> | 小字体 | 字号减小,用.small类,常用作注释文字。 |
<strong> | 强调文本 | 默认加粗。Bootstrap不更改本质。 |
<em> | 斜体强调 | 默认斜体。Bootstrap不更改。 |
<hr> | 水平分割线 | 细灰色线条,Bootstrap有.my-*间距类可控制上下间距。 |
<br> | 换行 | 无样式。 |
<iframe> | 内嵌框架 | Bootstrap无默认样式,通常embed-responsive类配合使用实现响应式。 |
<embed>, <object>, <video>, <audio> | 媒体嵌入 | Bootstrap提供.embed-responsive容器实现响应式。 |
<figure> | 图注容器 | 无默认样式,搭配.figure-img, .figure-caption可格式图片和说明。 |
<figcaption> | 图注说明 | 一般为小一号字体,灰色文字。 |
<button> | 按钮控件 | 需配合.btn,带颜色、边框和响应式内边距。 |
<input type="checkbox">, <input type="radio"> | 复选框和单选按钮 | 配合.form-check-input及其父容器.form-check的结构使用,带标准Bootstrap大小、间距和选中样式。 |
<progress> | 进度条 | Bootstrap 5 起增加了 .progress 类,带进度条样式支持。 |
<meter> | 范围测量 | 无默认样式。 |
<details> | 折叠内容 | 无默认样式,HTML本身浏览器支持折叠箭头。 |
<summary> | 折叠标题 | 同上。 |
<dl>, <dt>, <dd> | 描述列表及条目 | .row及.col-*结合使用实现排版。Bootstrap无专门样式,需自定义。 |
<mark> | 高亮文本 | 亮黄色背景。Bootstrap无自带,但可以自定义.bg-warning代替。 |
<abbr> | 缩略词 | 默认下划线并带 title 提示。 |
<sup>, <sub> | 上标和下标 | 无特别样式。 |
<button type="submit/reset/button"> | 不同类型按钮 | Bootstrap都使用.btn及其变体类控制外观,默认块级或内联可选。 |
<template> | HTML 模板 | 无样式,隐藏内容。 |
<canvas> | 画布元素 | 无样式。 |
<span> | 内联容器 | 无样式,配合辅助类如.text-primary, .badge使用。 |
<code>, <kbd>, <samp>, <var> | 代码相关语义标签 | Bootstrap无直接样式,.code类常用于<code>。 |
<address> | 联系信息 | 斜体文本,带默认上/下间距。 |
<sup> | 上标 | 无默认样式,随浏览器定义。 |
<sub> | 下标 | 无默认样式。 |
<b>, <i> | 加粗、斜体(无语义强调) | 无额外样式,继承浏览器默认。 |
<dfn> | 定义词 | 无样式,含标题提示,浏览器原生支持。 |
<bdi>, <bdo> | 双向文本控制 | 无样式。 |
颜色
文本颜色:有一些有代表意义的颜色类,比如:
<div class="container">
<h2>代表指定意义的文本颜色</h2>
<p class="text-muted">柔和的文本。</p>
<p class="text-primary">重要的文本。</p>
<p class="text-success">执行成功的文本。</p>
<p class="text-info">代表一些提示信息的文本。</p>
<p class="text-warning">警告文本。</p>
<p class="text-danger">危险操作文本。</p>
<p class="text-secondary">副标题。</p>
<p class="text-dark">深灰色文字。</p>
<p class="text-body">默认颜色,为黑色。</p>
<p class="text-light">浅灰色文本(白色背景上看不清楚)。</p>
<p class="text-white">白色文本(白色背景上看不清楚)。</p>
</div>可以再加一个参数,表示文本颜色透明度,比如.text-black-50,表示透明度50%
信息提示框
提示框可以使用 .alert 类, 后面加上 .alert-success, .alert-info, .alert-warning, .alert-danger, .alert-primary, .alert-secondary, .alert-light 或 .alert-dark 类来实现。
<div class="alert alert-success">
<strong>成功!</strong> 指定操作成功提示信息。
</div>如果想要加上关闭提示框代码,可以在提示框中的 div 中添加 .alert-dismissible 类,然后在关闭按钮的链接上添加 class="btn-close" 和 data-bs-dismiss="alert" 类来设置提示框的关闭操作。
<div class="alert alert-success alert-dismissible">
<button type="button" class="btn-close" data-bs-dismiss="alert"></button>
<strong>成功!</strong> 指定操作成功提示信息。
</div>.fade 和 .show 类用于设置提示框在关闭时的淡出和淡入效果:
<div class="alert alert-danger alert-dismissible fade show">按钮
<button type="button" class="btn">基本按钮</button>
<button type="button" class="btn btn-primary">主要按钮</button>
<button type="button" class="btn btn-secondary">次要按钮</button>
<button type="button" class="btn btn-success">成功</button>
<button type="button" class="btn btn-info">信息</button>
<button type="button" class="btn btn-warning">警告</button>
<button type="button" class="btn btn-danger">危险</button>
<button type="button" class="btn btn-dark">黑色</button>
<button type="button" class="btn btn-light">浅色</button>
<button type="button" class="btn btn-link">链接</button>徽章
徽章(Badges)主要用于突出显示新的或未读的项。如需使用徽章,只需要将 .badge 类加上带有指定意义的颜色类 (如 .bg-secondary) 添加到 元素上即可。 徽章可以根据父元素的大小的变化而变化。
<span class="badge bg-primary">主要</span>
<span class="badge bg-secondary">次要</span>
<span class="badge bg-success">成功</span>
<span class="badge bg-danger">危险</span>
<span class="badge bg-warning">警告</span>
<span class="badge bg-info">信息</span>
<span class="badge bg-light">浅色</span>
<span class="badge bg-dark">深色</span>

