CSS(Cascading Style Sheets,层叠样式表)

  • CSS 属性和值不区分大小写
  • 注释:/* */
  • CSS 中的空白会被忽略
  • 浏览器遇到无法解析的 CSS 会直接忽略

在 HTML 中引入 CSS

外部样式

在 head 中使用 link 标签引入 css 文件

<!doctype html>
<html lang="zh-CN">
  <head>
    <link rel="stylesheet" href="styles.css" />
  </head>
</html>

内部样式

在 head 中使用 style 标签写样式

<!doctype html>
<html lang="zh-CN">
  <head>
    <style>
      /* ... */
    </style>
  </head>
</html>

内联样式

直接在标签上使用 style 属性写样式

<html lang="zh-CN">
  <head>
  </head>
  <body>
    <h1 style="color: blue;">Hello World!</h1>
  </body>
</html>

CSS 加载过程

  • 浏览器载入 HTML 文件(比如从网络上获取)
  • 将 HTML 文件转化成一个 DOM
  • 接下来,浏览器会拉取该 HTML 相关的大部分资源,比如嵌入到页面的图片、视频和 CSS 样式
  • 浏览器拉取到 CSS 之后会进行解析,根据选择器的不同类型(比如 element、class、id 等等)把他们分到不同的“桶”中。浏览器基于它找到的不同的选择器,将不同的规则(基于选择器的规则,如元素选择器、类选择器、id 选择器等)应用在对应的 DOM 的节点中,并添加节点依赖的样式(这个中间步骤称为渲染树)
  • 上述的规则应用于渲染树之后,渲染树会依照应该出现的结构进行布局
  • 网页展示在屏幕上(这一步被称为着色)