排版(Typography)
使用 Bootstrap 排版的文档和示例,包括全局设置、标题、正文、列表等
全局设置
Bootstrap 设置基本的全局显示、排版和链接样式。 当需要更多控制时,请查看文本实用程序类。
- 使用 本地字体堆栈 为每个操作系统和设备选择最佳
font-family
。 - 为了获得更具包容性和可访问性的字体比例,我们使用浏览器的默认的
font-size
(通常为 16px),以便访问者可以根据需要自定义浏览器默认值。 - 使用
$font-family-base
、$font-size-base
和$line-height-base
属性作为我们的排版基础应用到<body>
上。 - 通过
$link-color
设置全局链接颜色。 - 使用
$body-bg
在<body>
上设置background-color
(默认为#fff
)。
这些样式可以在 _reboot.scss
中找到,全局变量在 _variables.scss
中定义。 确保使用 rem
设置 $font-size-base
。
标题
所有 HTML 标题,从 <h1>
到 <h6>
均可用。
标题 | 示例 |
---|---|
<h1></h1>
|
h1. Bootstrap heading |
<h2></h2>
|
h2. Bootstrap heading |
<h3></h3>
|
h3. Bootstrap heading |
<h4></h4>
|
h4. Bootstrap heading |
<h5></h5>
|
h5. Bootstrap heading |
<h6></h6>
|
h6. Bootstrap heading |
<h1>h1. Bootstrap heading</h1>
<h2>h2. Bootstrap heading</h2>
<h3>h3. Bootstrap heading</h3>
<h4>h4. Bootstrap heading</h4>
<h5>h5. Bootstrap heading</h5>
<h6>h6. Bootstrap heading</h6>
.h1
到 .h6
类也可用,当您想要匹配标题的字体样式但不能使用关联的 HTML 元素时。
h1. Bootstrap heading
h2. Bootstrap heading
h3. Bootstrap heading
h4. Bootstrap heading
h5. Bootstrap heading
h6. Bootstrap heading
<p class="h1">h1. Bootstrap heading</p>
<p class="h2">h2. Bootstrap heading</p>
<p class="h3">h3. Bootstrap heading</p>
<p class="h4">h4. Bootstrap heading</p>
<p class="h5">h5. Bootstrap heading</p>
<p class="h6">h6. Bootstrap heading</p>
自定义标题
使用包含在实用程序类中,从 Bootstrap 3 继承的,创建小号的二级标题文本。
Fancy display heading With faded secondary text
<h3>
Fancy display heading
<small class="text-muted">With faded secondary text</small>
</h3>
显示标题
传统的标题元素旨在最适合您页面的内容。 当您需要突出标题时,可以考虑使用显示标题——一种更大、更自以为是的标题样式。
<h1 class="display-1">Display 1</h1>
<h1 class="display-2">Display 2</h1>
<h1 class="display-3">Display 3</h1>
<h1 class="display-4">Display 4</h1>
<h1 class="display-5">Display 5</h1>
<h1 class="display-6">Display 6</h1>
显示标题通过 $display-font-sizes
Sass 映射和两个变量 $display-font-weight
和 $display-line-height
配置。
$display-font-sizes: (
1: 5rem,
2: 4.5rem,
3: 4rem,
4: 3.5rem,
5: 3rem,
6: 2.5rem
);
$display-font-weight: 300;
$display-line-height: $headings-line-height;
Lead类
通过添加 .lead
使段落脱颖而出。
This is a lead paragraph. It stands out from regular paragraphs.
<p class="lead">
This is a lead paragraph. It stands out from regular paragraphs.
</p>
内联文本元素
常用内联 HTML5 元素的样式。
You can use the mark tag to highlight text.
This line of text is meant to be treated as deleted text.
This line of text is meant to be treated as no longer accurate.
This line of text is meant to be treated as an addition to the document.
This line of text will render as underlined.
This line of text is meant to be treated as fine print.
This line rendered as bold text.
This line rendered as italicized text.
<p>You can use the mark tag to <mark>highlight</mark> text.</p>
<p><del>This line of text is meant to be treated as deleted text.</del></p>
<p><s>This line of text is meant to be treated as no longer accurate.</s></p>
<p><ins>This line of text is meant to be treated as an addition to the document.</ins></p>
<p><u>This line of text will render as underlined.</u></p>
<p><small>This line of text is meant to be treated as fine print.</small></p>
<p><strong>This line rendered as bold text.</strong></p>
<p><em>This line rendered as italicized text.</em></p>
请注意,这些标签应用于语义目的:
<mark>
表示为参考或注释目的而标记或突出显示的文本。<small>
代表旁注和小字,如版权和法律文本。<s>
表示不再相关或不再准确的元素。<u>
表示内联文本的范围,应该以表明它是非文本注释的方式呈现。
如果要设置文本样式,则应改用以下类:
.mark
将应用与<mark>
相同的样式。.small
将应用与<small>
相同的样式。.text-decoration-underline
将应用与<u>
相同的样式。.text-decoration-line-through
将应用与<s>
相同的样式。
虽然上面没有显示,但请随意在 HTML5 中使用 <b>
和 <i>
。 <b>
旨在突出显示单词或短语而不传达额外的重要性,而 <i>
主要用于语音、技术术语等。
文本实用程序
使用我们的 文本实用程序 和 颜色实用程序 更改文本对齐方式、变换、样式、粗细、行高、装饰和颜色 。
缩写
HTML <abbr>
元素,用于缩写,以在悬停时显示扩展版本。 缩写具有默认下划线并获得帮助光标,以在悬停时和辅助技术用户提供额外的上下文。
将 .initialism
添加么缩写上,显示略小的字体。
attr
HTML
<p><abbr title="attribute">attr</abbr></p>
<p><abbr title="HyperText Markup Language" class="initialism">HTML</abbr></p>
引用块
用于引用文档中其他来源的内容块。 将 <blockquote class="blockquote">
包裹在任何 HTML 元素周围表示引用。
A well-known quote, contained in a blockquote element.
<blockquote class="blockquote">
<p>A well-known quote, contained in a blockquote element.</p>
</blockquote>
命名来源
HTML 规范要求将块引用属性放在 <blockquote>
之外。 提供属性时,将您的 <blockquote>
包装在 <figure>
中并使用 <figcaption>
或块级元素( 例如,<p>
) 与 .blockquote-footer
类。 请务必将源作品的名称也包含在 <cite>
中。
<figure>
<blockquote class="blockquote">
<p>A well-known quote, contained in a blockquote element.</p>
</blockquote>
<figcaption class="blockquote-footer">
Someone famous in <cite title="Source Title">Source Title</cite>
</figcaption>
</figure>
对齐
根据需要使用文本实用程序来更改块引用的对齐方式。
<figure class="text-center">
<blockquote class="blockquote">
<p>A well-known quote, contained in a blockquote element.</p>
</blockquote>
<figcaption class="blockquote-footer">
Someone famous in <cite title="Source Title">Source Title</cite>
</figcaption>
</figure>
<figure class="text-end">
<blockquote class="blockquote">
<p>A well-known quote, contained in a blockquote element.</p>
</blockquote>
<figcaption class="blockquote-footer">
Someone famous in <cite title="Source Title">Source Title</cite>
</figcaption>
</figure>
列表(List)
无样式
删除默认的 list-style
样式和列表项的左边距(仅限直接子项)。 这仅适用于直接子列表项,这意味着您还需要为任何嵌套列表添加类。
- This is a list.
- It appears completely unstyled.
- Structurally, it's still a list.
- However, this style only applies to immediate child elements.
- Nested lists:
- are unaffected by this style
- will still show a bullet
- and have appropriate left margin
- This may still come in handy in some situations.
<ul class="list-unstyled">
<li>This is a list.</li>
<li>It appears completely unstyled.</li>
<li>Structurally, it's still a list.</li>
<li>However, this style only applies to immediate child elements.</li>
<li>Nested lists:
<ul>
<li>are unaffected by this style</li>
<li>will still show a bullet</li>
<li>and have appropriate left margin</li>
</ul>
</li>
<li>This may still come in handy in some situations.</li>
</ul>
内联
删除列表的项目符号并使用 .list-inline
和 .list-inline-item
两个类的组合应用一些轻量级 margin
。
- This is a list item.
- And another one.
- But they're displayed inline.
<ul class="list-inline">
<li class="list-inline-item">This is a list item.</li>
<li class="list-inline-item">And another one.</li>
<li class="list-inline-item">But they're displayed inline.</li>
</ul>
描述列表(dl)对齐
使用我们网格系统的预定义类,水平对齐术语(dt)和描述(dd)。 对于更长的术语(dt),您可以选择添加一个 .text-truncate
类来用省略号截断文本。
- Description lists
- A description list is perfect for defining terms.
- Term
-
Definition for the term.
And some more placeholder definition text.
- Another term
- This definition is short, so no extra paragraphs or anything.
- Truncated term is truncated
- This can be useful when space is tight. Adds an ellipsis at the end.
- Nesting
-
- Nested definition list
- I heard you like definition lists. Let me put a definition list inside your definition list.
<dl class="row">
<dt class="col-sm-3">Description lists</dt>
<dd class="col-sm-9">A description list is perfect for defining terms.</dd>
<dt class="col-sm-3">Term</dt>
<dd class="col-sm-9">
<p>Definition for the term.</p>
<p>And some more placeholder definition text.</p>
</dd>
<dt class="col-sm-3">Another term</dt>
<dd class="col-sm-9">This definition is short, so no extra paragraphs or anything.</dd>
<dt class="col-sm-3 text-truncate">Truncated term is truncated</dt>
<dd class="col-sm-9">This can be useful when space is tight. Adds an ellipsis at the end.</dd>
<dt class="col-sm-3">Nesting</dt>
<dd class="col-sm-9">
<dl class="row">
<dt class="col-sm-4">Nested definition list</dt>
<dd class="col-sm-8">I heard you like definition lists. Let me put a definition list inside your definition list.</dd>
</dl>
</dd>
</dl>
响应式字体大小
在 Bootstrap 5 中,我们默认启用了响应式字体大小,允许文本更自然地跨设备和视口大小缩放。 查看 RFS 页面 了解其工作原理。
Sass
变量
标题有一些用于大小和间距的专用变量。
$headings-margin-bottom: $spacer * .5;
$headings-font-family: null;
$headings-font-style: null;
$headings-font-weight: 500;
$headings-line-height: 1.2;
$headings-color: null;
此处的一些变量在 重置(Reboot) 中介绍的各种排版元素也有专用变量。
$lead-font-size: $font-size-base * 1.25;
$lead-font-weight: 300;
$small-font-size: .875em;
$sub-sup-font-size: .75em;
$text-muted: $gray-600;
$initialism-font-size: $small-font-size;
$blockquote-margin-y: $spacer;
$blockquote-font-size: $font-size-base * 1.25;
$blockquote-footer-color: $gray-600;
$blockquote-footer-font-size: $small-font-size;
$hr-margin-y: $spacer;
$hr-color: inherit;
$hr-height: $border-width;
$hr-opacity: .25;
$legend-margin-bottom: .5rem;
$legend-font-size: 1.5rem;
$legend-font-weight: null;
$mark-padding: .2em;
$dt-font-weight: $font-weight-bold;
$nested-kbd-font-weight: $font-weight-bold;
$list-inline-padding: .5rem;
$mark-bg: #fcf8e3;
Mixins
没有专门用于排版的 mixin,但 Bootstrap 确实使用 响应式字体大小 (RFS)。