如何添加 CSS

当浏览器读到样式表时,它将根据样式表中的信息来格式化 HTML 文档。

三种使用 CSS 的方法

有三种插入样式表的方法:

  • 外部 CSS
  • 内部 CSS
  • 行内 CSS

外部 CSS

通过使用外部样式表,您只需修改一个文件即可改变整个网站的外观!

每张 HTML 页面必须在 head 部分的 <link> 元素内包含对外部样式表文件的引用。

实例

外部样式在 HTML 页面 <head> 部分内的 <link> 元素中进行定义:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <link rel="stylesheet" type="text/css" href="mystyle.css">
  5. </head>
  6. <body>
  7. <h1>This is a heading</h1>
  8. <p>This is a paragraph.</p>
  9. </body>
  10. </html>

外部样式表可以在任何文本编辑器中编写,并且必须以 .css 扩展名保存。

外部 .css 文件不应包含任何 HTML 标签。

“mystyle.css” 是这样的:

“mystyle.css”

  1. body {
  2. background-color: lightblue;
  3. }
  4. h1 {
  5. color: navy;
  6. margin-left: 20px;
  7. }

注意:请勿在属性值和单位之间添加空格(例如 margin-left: 20 px;)。正确的写法是:margin-left: 20px;

内部 CSS

如果一张 HTML 页面拥有唯一的样式,那么可以使用内部样式表。

内部样式是在 head 部分的 <style> 元素中进行定义。

实例

内部样式在 HTML 页面的 <head> 部分内的 <style> 元素中进行定义:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <style>
  5. body {
  6. background-color: linen;
  7. }
  8. h1 {
  9. color: maroon;
  10. margin-left: 40px;
  11. }
  12. </style>
  13. </head>
  14. <body>
  15. <h1>This is a heading</h1>
  16. <p>This is a paragraph.</p>
  17. </body>
  18. </html>

行内 CSS

行内样式(也称内联样式)可用于为单个元素应用唯一的样式。

如需使用行内样式,请将 style 属性添加到相关元素。style 属性可包含任何 CSS 属性。

实例

行内样式在相关元素的 “style” 属性中定义:

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <h1 style="color:blue;text-align:center;">This is a heading</h1>
  5. <p style="color:red;">This is a paragraph.</p>
  6. </body>
  7. </html>

提示:行内样式失去了样式表的许多优点(通过将内容与呈现混合在一起)。请谨慎使用此方法。

多个样式表

如果在不同样式表中为同一选择器(元素)定义了一些属性,则将使用最后读取的样式表中的值。

假设某个外部样式表<h1> 元素设定的如下样式:

  1. h1 {
  2. color: navy;
  3. }

然后,假设某个内部样式表也为 <h1> 元素设置了如下样式:

  1. h1 {
  2. color: orange;
  3. }

实例

如果内部样式是在链接到外部样式表之后定义的,则 <h1> 元素将是橙色:

  1. <head>
  2. <link rel="stylesheet" type="text/css" href="mystyle.css">
  3. <style>
  4. h1 {
  5. color: orange;
  6. }
  7. </style>
  8. </head>

实例

不过,如果在链接到外部样式表之前定义了内部样式,则 <h1> 元素将是深蓝色:

  1. <head>
  2. <style>
  3. h1 {
  4. color: orange;
  5. }
  6. </style>
  7. <link rel="stylesheet" type="text/css" href="mystyle.css">
  8. </head>

层叠顺序

当为某个 HTML 元素指定了多个样式时,会使用哪种样式呢?

页面中的所有样式将按照以下规则“层叠”为新的“虚拟”样式表,其中第一优先级最高:

  1. 行内样式(在 HTML 元素中)
  2. 外部和内部样式表(在 head 部分)
  3. 浏览器默认样式

因此,行内样式具有最高优先级,并且将覆盖外部和内部样式以及浏览器默认样式。