HTML 样式
style 属性用于改变 HTML 元素的样式。
HTML 的 style 属性
style 属性的作用:
提供了一种改变所有 HTML 元素的样式的通用方法。
不赞成使用的标签和属性
应该避免使用下面这些标签和属性:
标签 | 描述 |
---|---|
<center> | 定义居中的内容。 |
<font> 和 <basefont> | 定义 HTML 字体。 |
<s> 和 <strike> | 定义删除线文本 |
<u> | 定义下划线文本 |
属性 | 描述 |
align | 定义文本的对齐方式 |
bgcolor | 定义背景颜色 |
color | 定义文本颜色 |
对于以上这些标签和属性:请使用样式代替!
HTML 样式实例 - 背景颜色
background-color 属性为元素定义了背景颜色:
下面的代码是一个例子:
<html>
<body style="background-color:yellow">
<h2 style="background-color:red">This is a heading</h2>
<p style="background-color:green">This is a paragraph.</p>
</body>
<html>
结果为:
HTML 样式实例 - 字体、颜色和尺寸
font-family、color 以及 font-size 属性分别定义元素中文本的字体系列、颜色和字体尺寸:
<html>
<body>
<h1 style="font-family:verdana">A heading</h1>
<p style="font-family:arial;color:red;font-size:20px;">A paragraph.</p>
</body>
</html>
HTML 样式实例 - 文本对齐
text-align 属性规定了元素中文本的水平对齐方式:
<html>
<body>
<h1 style="text-align:center">This is a heading</h1>
<p>The heading above is aligned to the center of this page.</p>
</body>
</html>
HTML 文本格式化
HTML 可定义很多供格式化输出的元素,比如粗体和斜体字。
文本格式化标签
标签 | 描述 |
---|---|
<b> | 定义粗体文本。 |
<big> | 定义大号字。 |
<em> | 定义着重文字。 |
<i> | 定义斜体字。 |
<small> | 定义小号字。 |
<strong> | 定义加重语气。 |
<sub> | 定义下标字。 |
<sup> | 定义上标字。 |
<ins> | 定义插入字。 |
<del> | 定义删除字。 |
计算机输出”标签
标签 | 描述 |
---|---|
<code> | 定义计算机代码。 |
<kbd> | 定义键盘码。 |
<samp> | 定义计算机代码样本。 |
<tt> | 定义打字机代码。 |
<var> | 定义变量。 |
<pre> | 定义预格式文本。 |
引用、引用和术语定义
标签 | 描述 |
---|---|
<abbr> | 定义缩写。 |
<acronym> | 定义首字母缩写。 |
<address> | 定义地址。 |
<bdo> | 定义文字方向。 |
<blockquote> | 定义长的引用。 |
<q> | 定义短的引用语。 |
<cite> | 定义引用、引证。 |
<dfn> | 定义一个定义项目。 |
改变文本的外观和含义
很多标签都可以用来改变文本的外观,并为文本关联其隐藏的含义。总地来说,这些标签可以分成两类:基于内容的样式(content-based style)和物理样式(physical style)。
基于内容的样式
基于内容的样式标签会告诉浏览器它所包含的文本具有特定的含义、上下文或者用法。然后浏览器就会把与该含义、上下文或者用法一致的格式应用在文本上。请注意这里面的区别。基于内容的标签赋予含义,而不是格式化。因此,它们对于自动处理来说非常重要
因为字体样式是通过语义线索来指定的,因此浏览器可以为用户选择一种合适的显示样式。由于不同地点的样式各种各样,所以使用基于内容的样式可以帮助你确保自己的文档对广大范围的读者来说都是有意义的。这一点在专门供那些盲人和残疾人所使用的浏览器上显得尤其重要,因为他们的显示选项可能和我们传统的文本根本不同,或者在某方面具有非常大的局限性。
当前的 HTML 和 XHTML 标准并没有为每一个基于内容的标签都定义一种格式;它们仅仅规定必须用与文档中普通文本不同的方式来显示基于内容的样式。标准甚至没有要求这些基于内容的样式彼此之间都要用不同的方式显示。
使用 HTML/XHTML 基于内容的样式标签时要遵从一些规则,因为仅仅是简单地想想文本该如何显示,而不必知道这些文本的含义是什么,是十分容易的。一旦你开始使用基于内容的样式之后,文档将会更加一致,而且可以更好地帮助执行自动搜索和内容编辑。
物理样式
在某些情况下,可能是出于合法性或者版权等方面的原因的考虑,你希望文本以某种特殊的方式来显示(例如斜体或加粗)。在这种情况下,就可以对文本使用物理样式。
虽然其他文字处理系统的趋势是精确地控制样式和外观,但是在使用 HTML 或 XHTML 时,除非极少情况下,都应该避免使用物理标签。应当尽可能地向浏览器提供上下文信息,并使用基于内容的样式。
当前的 HTML/XHTML 标准一共提供了 9 种物理样式,包括粗体(bold)、斜体(italic)、等宽(monospaced)、下划线(underlined)、删除线(strikethrough)、放大(larger)、缩小(smaller)、上标(superscripted)和下标(subscripted)文本。
要实现在整个文档范围内对文本显示的全面控制,请使用样式表。
HTML 文本格式化实例
下面的代码是一个例子,在一个 HTML 文件中对文本进行格式化:
<html>
<body>
<b>This text is bold</b>
<br />
<strong>This text is bold</strong>
<br />
<big>This text is big</big>
<br />
<em>This text is emphazized</em>
<br />
<i>This text is italic</i>
<br />
<small>This text is small</small>
<br />
This text contains
<sub>subscipt</sub>
<br />
This text contains
<sup>superscipt</sup>
</body>
</html>
输出如下:
下面的代码是一个例子,如何使用 pre 标签对空行和空格进行控制:
<html>
<body>
<pre>
这是
预格式文本
它保留了 空格
</pre>
<p>pre标签适合显示计算机代码:</p>
<pre>
for i = 1 to 10
print i
next i
</pre>
</body>
</html>
输出如下:
下面的代码是一个例子,演示不同的“计算机输出”标签的显示效果:
<html>
<body>
<code>Computer code</code>
<br />
<kbd>Keyboard input</kbd>
<br />
<tt>Teletype text</tt>
<br />
<samp>Sample text</samp>
<br />
<var>Computer variable</var>
</br>
<p>
<b>注释:</b>这些标签用于显示计算机代码
</p>
</body>
</html>
输出如下:
下面的代码是一个例子,演示如何在 HTML 文件中写地址:
<!DOCTYPE html>
<html>
<body>
<address>
Written by <a href="mailto:webmaster@example.com">Donald Duck</a>.<br />
Visit us at:<br />
Example.com<br />
Box 564, Bilibili<br />
USA
</address>
</body>
</html>
输出如下:
下面的代码是一个例子,演示如何实现缩写或首字母缩写:
<html>
<body>
<abbr title="etcetera">etc.</abbr>
<br />
<acronym title="World Wide Web">WWW</acronym>
<p>当把鼠标移至缩略语上时,title可用于展示表达的完整版。</p>
</body>
</html>
输出如下:
下面的代码是一个例子,演示如何改变文字的方向:
<html>
<body>
<bdo dir="rtl">
NARUTO
</bdo>
<p>上面的一行将从右向左输出(rtl)</p>
</body>
</html>
输出如下:
下面的代码是一个例子,演示如何实现长短不一的引用语:
<html>
<body>
这是长的引用
<blockquote>
I love you! I love you! I love you! I love you! I love you! I love you!
</blockquote>
这是短的引用:
<q>
I love you!
</q>
<p>使用blockquote的话,浏览器会插入换行和外边距,而q元素不会有任何特殊的呈现
</p>
</body>
</html>
输出如下:
下面的代码是一个例子,演示如何标记删除文本和插入文本:
<html>
<body>
<p>一打有<del>二十</del><ins>十二</ins>件。</p>
</body>
</html>
输出如下:
HTML 引用
HTML <q> 用于短的引用
HTML <q> 元素定义短的引用。
浏览器通常会为 <q> 元素包围引号。
实例
<p>我说过:<q>我爱你!</q></p>
输出如下:
用于长引用的 HTML <blockquote>
HTML <blockquote> 元素定义被引用的节。
浏览器通常会对 <blockquote> 元素进行缩进处理。
实例
<p>嘿嘿嘿:</p>
<blockquote cite="http://bilibili.com">
哔哩哔哩干杯!!
哔哩哔哩干杯!!
哔哩哔哩干杯!!
</blockquote>
输出如下:
用于缩略词的 HTML <abbr>
HTML <abbr> 元素定义缩写或首字母缩略语。
对缩写进行标记能够为浏览器、翻译系统以及搜索引擎提供有用的信息。
实例
<p><abbr title="哔哩哔哩">B站</abbr>成立于2009年</p>
输出如下:
用于定义的 HTML <dfn>
HTML <dfn> 元素定义项目或缩写的定义。
<dfn> 的用法,按照 HTML5 标准中的描述,有点复杂:
1. 如果设置了 <dfn> 元素的 title 属性,则定义项目:
实例
<p><dfn title="bilibili">B站</dfn>成立于2009年。</p>
输出如下:
2. 如果 <dfn> 元素包含具有标题的 <abbr> 元素,则 title 定义项目:
实例
<p><dfn><abbr title="bilibili">B站</abbr></dfn>成立于2009年。</p>
输出如下:
3. 否则,<dfn> 文本内容即是项目,并且父元素包含定义。
实例
<p><dfn>bilibili</dfn> B站 成立于2009年。</p>
输出如下:
用于联系信息的 HTML <address>
HTML <address> 元素定义文档或文章的联系信息(作者/拥有者)。
此元素通常以斜体显示。大多数浏览器会在此元素前后添加折行。
实例
<address>
Written by Naruto.<br />
Visit us at: <br />
Example.com<br />
bilibili<br />
China
</address>
输出如下:
用于著作标题的 HTML <cite>
HTML <cite> 元素定义著作的标题。
浏览器通常会以斜体显示 <cite> 元素。
实例
<p><cite>Naruto</cite> by kishimoto. Painted in 1999.</p>
输出如下:
用于双向重写的 HTML <bdo>
HTML <bdo> 元素定义双流向覆盖(bi-directional override)。
<bdo> 元素用于覆盖当前文本方向:
实例
<bdo dir="rtl">Naruto</bdo>
输出如下:
HTML 引文、引用和定义元素
标签 | 描述 |
---|---|
<abbr> | 定义缩写或首字母缩略语。 |
<address> | 定义文档作者或拥有者的联系信息。 |
<bdo> | 定义文本方向。 |
<blockquote> | 定义从其他来源引用的节。 |
<dfn> | 定义项目或缩略词的定义。 |
<q> | 定义短的行内引用。 |
<cite> | 定义著作的标题。 |