# CSS 简介 ## 需要具备的基础知识 在继续学习之前,你需要对下面的知识有基本的了解: * HTML * XHTML 如果你希望首先学习这些项目,请在 [首页](/index.html "W3School 在线教程") 访问相关教程。 ## CSS 概述 * CSS 指层叠样式表 (_C_ascading _S_tyle _S_heets) * 样式定义_如何显示_ HTML 元素 * 样式通常存储在_样式表_中 * 把样式添加到 HTML 4.0 中,是为了_解决内容与表现分离的问题_ * _外部样式表_可以极大提高工作效率 * 外部样式表通常存储在 _CSS 文件_中 * 多个样式定义可_层叠_为一 ## 样式解决了一个普遍的问题 HTML 标签原本被设计为用于定义文档内容。通过使用 <h1>、<p>、<table> 这样的标签,HTML 的初衷是表达“这是标题”、“这是段落”、“这是表格”之类的信息。同时文档布局由浏览器来完成,而不使用任何的格式化标签。 由于两种主要的浏览器(Netscape 和 Internet Explorer)不断地将新的 HTML 标签和属性(比如字体标签和颜色属性)添加到 HTML 规范中,创建文档内容清晰地独立于文档表现层的站点变得越来越困难。 为了解决这个问题,万维网联盟(W3C),这个非营利的标准化联盟,肩负起了 HTML 标准化的使命,并在 HTML 4.0 之外创造出样式(Style)。 所有的主流浏览器均支持层叠样式表。 ## 样式表极大地提高了工作效率 样式表定义如何显示 HTML 元素,就像 HTML 3.2 的字体标签和颜色属性所起的作用那样。样式通常保存在外部的 .css 文件中。通过仅仅编辑一个简单的 CSS 文档,外部样式表使你有能力同时改变站点中所有页面的布局和外观。 由于允许同时控制多重页面的样式和布局,CSS 可以称得上 WEB 设计领域的一个突破。作为网站开发者,你能够为每个 HTML 元素定义样式,并将之应用于你希望的任意多的页面中。如需进行全局的更新,只需简单地改变样式,然后网站中的所有元素均会自动地更新。 ## 多重样式将层叠为一个 样式表允许以多种方式规定样式信息。样式可以规定在单个的 HTML 元素中,在 HTML 页的头元素中,或在一个外部的 CSS 文件中。甚至可以在同一个 HTML 文档内部引用多个外部样式表。 ### 层叠次序 **当同一个 HTML 元素被不止一个样式定义时,会使用哪个样式呢?** 一般而言,所有的样式会根据下面的规则层叠于一个新的虚拟样式表中,其中数字 4 拥有最高的优先权。 1. 浏览器缺省设置 2. 外部样式表 3. 内部样式表(位于 <head> 标签内部) 4. 内联样式(在 HTML 元素内部) 因此,内联样式(在 HTML 元素内部)拥有最高的优先权,这意味着它将优先于以下的样式声明:<head> 标签中的样式声明,外部样式表中的样式声明,或者浏览器中的样式声明(缺省值)。