CSS 层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML或XML等文件样式的计算机语言。CSS3是CSS2的升级版本,3只是版本号,它在CSS2.1的基础上增加了很多强大的新功能。 目前主流浏览器chrome、safari、firefox、opera、甚至360都已经支持了CSS3大部分功能了,IE10以后也开始全面支持CSS3了。不同的浏览器可能需要不同的前缀。它表示该CSS属性或规则尚未成为W3C标准的一部分,是浏览器的私有属性,虽然目前较新版本的浏览器都是不需要前缀的,但为了更好的向前兼容前缀还是少不了的。
<span style="color: #800000;">-moz-transform:translateX(20px); -webkit-transform:translateX(20px); -ms-transform:translateX(20px); transform:translateX(20px);</span>
transform为CSS3的新属性,各浏览器都需要添加前缀来支持。
<span style="color: #008000;">/*</span><span style="color: #008000;"> style.css </span><span style="color: #008000;">*/</span><span style="color: #800000;"> body</span>{<span style="color: #ff0000;"> background-color</span>:<span style="color: #0000ff;">#ccc</span>; }<span style="color: #800000;"> h1</span>{<span style="color: #ff0000;"> font-size</span>:<span style="color: #0000ff;">16px</span>;<span style="color: #ff0000;"> font-family</span>:<span style="color: #0000ff;">"微软雅黑"</span>;<span style="color: #ff0000;"> font-weight</span>:<span style="color: #0000ff;">normal</span>; }
<span style="color: #008000;"><!--</span><span style="color: #008000;"> index.html </span><span style="color: #008000;">--></span> <span style="color: #0000ff;"><span style="color: #800000;">head</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><span style="color: #800000;">link </span><span style="color: #ff0000;">rel</span><span style="color: #0000ff;">="stylesheet"</span><span style="color: #ff0000;"> href</span><span style="color: #0000ff;">="./style.css"</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"></span><span style="color: #800000;">head</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><span style="color: #800000;">body</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><span style="color: #800000;">h1</span><span style="color: #0000ff;">></span>这是标题<span style="color: #0000ff;"></span><span style="color: #800000;">h1</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"></span><span style="color: #800000;">body</span><span style="color: #0000ff;">></span></span></span></span></span>
CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明,选择器通常是你需要改变样式的 HTML 元素。每条声明由一个属性和一个值组成。属性(property)是你希望设置的样式属性(style attribute)。每个属性有一个值。属性和值被冒号分开。
<span style="color: #800000;">p</span>{ <span style="color: #008000;">/*</span><span style="color: #008000;"> 选择器 </span><span style="color: #008000;">*/</span><span style="color: #ff0000;"> color</span>:<span style="color: #0000ff;">red</span>; <span style="color: #008000;">/*</span><span style="color: #008000;"> 属性:值; </span><span style="color: #008000;">*/</span> }
引入样式表的方法有三种:
当样式需要应用于很多页面时,外部样式表将是理想的选择。在使用外部样式表的情况下,你可以通过改变一个文件来改变整个站点的外观。每个页面使用 标签链接到样式表。 标签在(文档的)头部:
<span style="color: #800000;"> <link rel="stylesheet" type="text/css" href="style.css"> </span>
当单个文档需要特殊的样式时,就应该使用内部样式表。可以使用
<span style="color: #800000;"> <style> p </style></span>{<span style="color: #ff0000;"> color</span>:<span style="color: #0000ff;">red</span>; }<span style="color: #800000;"> </span>
内联样式是指将CSS样式直接写在HTML 标签中的style属性里。注意这种方式的引入CSS,是不需要写选择器的。
<span style="color: #800000;"><p style="color:red;">这是一个段落</p></span>
当同一个 HTML 元素被不止一个样式定义时,会使用哪个样式呢?一般而言,所有的样式会根据下面的规则层叠于一个新的虚拟样式表中,其中数字 4 拥有最高的优先权。
因此,内联样式(在 HTML 元素内部)拥有最高的优先权,这意味着它将优先于以下的样式声明: 标签中的样式声明,外部样式表中的样式声明,或者浏览器中的样式声明(缺省值)。
css 代码注释,以 /* 开始 */ 结束。
<span style="color: #008000;">/*</span><span style="color: #008000;"> 公共样式</span><span style="color: #008000;">*/</span><span style="color: #800000;"> body </span>{<span style="color: #ff0000;"> margin</span>:<span style="color: #0000ff;">0px</span>;<span style="color: #ff0000;"> padding</span>:<span style="color: #0000ff;">0px</span>;} <span style="color: #008000;">/*</span><span style="color: #008000;">导航样式开始</span><span style="color: #008000;">*/</span><span style="color: #800000;"> #nav </span>{<span style="color: #ff0000;"> …… </span>} <span style="color: #008000;">/*</span><span style="color: #008000;">导航样式结束</span><span style="color: #008000;">*/</span>
CSS选择器用于选择你想要的元素的样式的模式。
* 选择器选择所有元素。* 选择器也可以选择另一个元素内的所有元素:
<span style="color: #800000;">*</span>{ <span style="color: #008000;">/*</span><span style="color: #008000;"> 选择所有元素 </span><span style="color: #008000;">*/</span><span style="color: #ff0000;"> margin</span>:<span style="color: #0000ff;">0</span>;<span style="color: #ff0000;"> padding</span>:<span style="color: #0000ff;">0</span>; }<span style="color: #800000;"> div *</span>{ <span style="color: #008000;">/*</span><span style="color: #008000;"> 选择div元素下的所有元素 </span><span style="color: #008000;">*/</span><span style="color: #ff0000;"> color</span>:<span style="color: #0000ff;">blue</span>; }
所谓元素选择符,指以网页中已有的标签名作为名称的选择符。
<span style="color: #800000;">body</span>{ <span style="color: #008000;">/*</span><span style="color: #008000;"> 选择标签为body的元素 </span><span style="color: #008000;">*/</span><span style="color: #ff0000;"> font-size</span>:<span style="color: #0000ff;">16px</span>; }<span style="color: #800000;"> a</span>{ <span style="color: #008000;">/*</span><span style="color: #008000;"> 选择标签为a的元素 </span><span style="color: #008000;">*/</span><span style="color: #ff0000;"> text-decoration</span>:<span style="color: #0000ff;">none</span>; }
除了可以对单个标签进行样式指定外,还可以对一组标签进行相同的样式定义。使用逗号对选择符进行分隔。对页面中需要使用相同样式的元素,只需写一次样式。
<span style="color: #800000;">h1,h2,h3,p</span>{<span style="color: #ff0000;"> font-size</span>:<span style="color: #0000ff;">16px</span>;<span style="color: #ff0000;"> color</span>:<span style="color: #0000ff;">red</span>; }