1、CSS 快速入门 CSS 是 Cascading Style Sheets(层叠样式表单)的简称。更多的人把它称作样式表。顾名思义,它是一种设计网页样式的工具。借助 CSS 的强大功能,网页将在您丰富的想象力下千变万化。图 1 图 2看到上面的两幅图片,您可能会认为这是用 photoshop 或者是其他图形处理软件制作的吧。可是上面的例子却完全是用 CSS 编写的。我们来看一下它的源代码(不要以为讲代码您会搞不懂,很简单的_ ):css word /*CSS 样式定义开始*/ /*样式定义结束*/ /*以下的区域内采用中里面定义的格式*/ hongen /*定义字体样式(font-style)
2、,包括字体大小(size)、粗细(bold)、颜色 (color)*/上面的代码中以红色显示的是注释部分,用于帮助您更好的理解代码的含义。上面的这一段代码产生的是如图 2 的效果。而其中字体的模糊效果就是运用了 CSS的滤镜功能。滤镜功能是 CSS 非常有趣也非常吸引人的一个功能,我们将在后面的章节中介绍。实际上 CSS 的代码都是由一些最基本的语句构成的。它的基本语句的结构是这样的: 选择符属性:属性值 看,是不是很简单,只有三部分。 我们结合上面的代码来讲解,比如上面代码的 中,使用来指定样式。 一般说来,下面的 CSS 语句是以注释语句的形式书写的,也就是上面代码中的符号包含的部分。所以
3、,上面的例子中定义页面样式的语句是:divwidth:200;filter: blur(add=true,direction=35,strengh=20); 在上面的语句中,DIV 是选择符,选择符可以是 HTML 中任何的标识符,比如 P、DIV、IMG 甚至 BODY 都可以作为选择符。 这里用 DIV 做选择符,就是说在 HTML 中,编辑在 中的页面格式将以上面语句中大括号内定义的格式显示。 括号内的 WIDTH 和 FILTER 就是属性。WIDTH 定义了 DIV 区域内的页面的宽度,200 是属性值。 FILTER 定义了滤镜属性,BLUR 是它的属性值,该属性值产生的是一种模糊
4、效果,其小括号内定义的是 BLUR 属性值的一些参数。 ADD 参数有两个值: True 和 False。分别指定图片是否被设置成模糊效果。Direction 参数是用来设置模糊的方向。 0 度代表垂直向上,然后每 45 度一个单位,例子中的 135 代表底部向右 135 度,每一个度数单位都代表一个模糊方向,如果您感兴趣的话,可以参照后面的讲解中详细的参数设定。 Strengh 代表有多少像素的宽度将受到模糊影响,参数值是用整数来设置的。 我们看到除了在中有 CSS 的定义,在中也有一段 CSS 定义:hongen 这里 Style 是内嵌到中来定义该段落内的格式的。我们发现在 中的 CSS
5、 语句与定义在 中还有些不同,它是用直接定义的。这种定义方法非常适用于编写的代码比较多的情况。而上面的代码的 CSS 定义格式则非常适用于代码较少、结构较简单的情况。 按照 CSS 语句的基本格式,我们可以看出上面定义 P 段落内的 CSS 代码中font-size、font-style 和 color 是属性,分别定义 中 “hongen”字体的大小(size)、样式(style) 和颜色(color);而 48、bold、red 是属性值。意思是“hongen”将以 48pt、粗体、红色的样式显示。由于整个段落是定义在中的,所以 hongen 又将显示出中定义的滤镜属性来。最终的结果就如同
6、图 2 一样。 图 1 中的效果也是用很简单的 CSS 语句实现的,只是运用了 CSS 中的滤镜属性而已。 通过上面的讲解,我们可以看到用很简单的 CSS 语句就可以实现许多需要专业软件才可以达到的效果。利用属性可以设置字体、颜色、背景等页面格式;利用定位可以使页面布局更加规范、好看;利用滤镜可以使页面产生多媒体效果。 怎么样,CSS 的功能是不是很强大,在下面的教程中我们将对它进行详细的讲解。 怎样编写 CSS? 从上面的例子中,我们可以看到 CSS 的语句是内嵌在 HTML 文档内的。所以,编写 CSS 的方法和编写 HTML 文档的方法是一样的。您可以用任何一种文本编辑工具来编写。比如
7、Windows 下的记事本和写字板、专门的 HTML 文本编辑工具(Frontpage、Ultraedit 等),都可以用来编辑 CSS 文档。 那么您可能会问,独立编辑好的 CSS 文档怎样加入到 HTML 文档中呢?其实在第一章中的例子里已经介绍了两种方法。一种是把 CSS 文档放到文档中: 其中中的“type=text/css” 的意思是中的代码是定义样式表单的。 另一种方法是把 CSS 样式表写在 HTML 的行内,比如下面的代码: 蓝色 14 号文字 这是采用的格式把样式写在 html 中的任意行内,这样比较方便灵活。 还有一种方法是:把您编辑好的 CSS 文档保存成“.CSS” 文
8、件,然后在中定义。定义的格式是这样的: 我们看到这里应用了一个 ,“rel=stylesheet” 指连接的元素是一个样式表(stylesheet)文档。一般这里是不需要您改动的。而后面的“href=style.css” 指的是需要连接的文件地址。您只需把编辑好的“.CSS”文件的详细路径名写进去就可以了。这种方法非常适宜同时定义多个文档。它能使多个文档同时使用相同的样式,从而减少了大量的冗余代码。 本章主要介绍了编写 CSS 的方法以及如何把作好的 CSS 文档与 HTML 结合起来运用。您可以根据自己编写的 HTML 代码的结构、长度来选择用哪一种方法将CSS 与之结合。下一章我们将进入
9、CSS 的具体知识的学习,我们将先从最基本的属性开始讲起。 三、CSS 属性 从 CSS 的基本语句就可以看出,属性是 CSS 非常重要的部分。熟练掌握了CSS 的各种属性将会是您编辑页面更加得心应手。下面我们就借助一些实例来讲解。1、 字体属性 这是最基本的属性,您经常都会用到。它主要包括以下这些属性: 光看表格是不是有些难懂,不要紧,我们来看一个用表格中的属性定义的字体样式(如下图): 第一行只是采用了“font-family”属性,代码是这样的: hongen 这行代码定义了“hongen”将以“lucida console” 的字体显示; 第二行 font-family 为默认值,而是
10、定义了“font-style”属性为“italic”斜体,代码如下: hongen 第三行 font-family 为默认值,font-style 为“oblique”,另外还定义了“font-weight”属性为“bold”,“font-size”属性为 24pt(缺省情况下为 absolute size 绝对大小)代码如下:hongen 最后一行只是在第三行定义的基础上又增添了“font-variant”属性为“small-caps”(小体大写),代码如下: hongen 值得注意的是:“font-variant”属性值“small-caps”在指定的小体大写字体不存在的时候,CSS 将用
11、大写字母代替所有的小写字母。 可能您会问:定义一个字体怎么有那么长的代码呢?其实字体属性中还一个“font”属性,可以实现简便定义。我们来看下面这段代码:Leaf 此代码产生的效果是这样的(如下图):这段代码定义了“leaf”的字体为 GlitzyCurl,并且是斜体、小体大写、粗体、 36号字。这段代码等同于: Leaf 怎么样,是不是精简了许多。 但需要注意的是:如果您用属性直接定义,一定要注意属性值的排放顺序。 它的排放规则是按照“font-style”、“font-variant”、“font-weight”、“font-size”、“font-family”的顺序,其中没有定义的以默
12、认值显示。 其实我们习惯上还是不用 FONT 属性来统一定义,因为分开来定义的代码虽然很长,但是看上去很直观,让人一看就知道定义的内容是什么。 说一点遗憾之处吧,就是 CSS 对中文字体的支持可能不是很好。 2、颜色和背景属性 您总不希望自己的页面处于黑白世界吧。如果给用属性定义的文本添上颜色是不是会更好呢? 下面我们就讲一下 CSS 的颜色和背景属性。先来看一下 CSS 下的颜色和背景都有哪些属性吧(如下表): 我们还是举个例子吧。比如上一节讲到的“LEAF”字体,我们在其中加入颜色属性,在再加入以下代码:color :rgb(204,82,28);background-img:url(ss
13、01038.jpg) ; background-repeat:no-repeat ;margin-right:15em /*设置前景色的 rgb 值为(204,82,28),您也可以用颜色的英文名称直接定义;设置背景图案的地址;设置背景图案不重复显示;另外还设置了页边距 margin属性,这个我们以后再讲*/ 加入代码后“Leaf” 的字体显示效果是这样的(如下图): 怎么样,是不是比光是定义属性显得更加漂亮了。当然您也可以简便的定义 background 属性(象定义 font 属性那样),下面我告诉一下您 background 属性的书写格式: 属性:background 属性值:| |
14、也就是说,使用 background 属性可以一次定义前面讲到的一切有关背景的属性,包括背景色、背景图案等等。因此,上面定义“leaf”颜色属性中有关背景的代码可以写成这样: “background:url (ss01038.jpg)no-reapeat”好了,至于颜色和背景属性的功能,您自己也可以去试一试。下一节我们将介绍 CSS 的文本属性。 3、文本属性 定义间距前面说了如何用 CSS 定义字体、颜色和背景属性,那么定义好的文本我们怎么对它进行排版呢?下面我们讲述一下 CSS 的文本属性,还是先来看一下文本属性的详细列表:我们可以从表中看到在这里可以定义文本的文字间距、字母间距、装饰、对
15、齐方式、缩进方式和行高等属性。 举个例子来看看吧。比如下面这段文字(如左下图): 我们对这段文字加上文本属性重新排版,排版后的效果如右上图所示。我们看到经过文本属性处理的文本字与字之间多了间距,行与行之间多了行高,对齐方式变成了两端对齐,并且段首又多缩进了两格。这是怎样实现的呢?很简单,只是在 html 中加了如下的代码: /*letter-spacing 设置了字间距为 1em,其中 1em 为一个长度单位;text-align 设置了对齐方式为两端对齐;indent 设置了缩进格为 4em;line-height 设置了行高为 17pt*/ 从上面的例子,我们可以看出利用 CSS 的文本属
16、性可以方便的对页面中的文本进行排版。下一节我将向您介绍文本的 Text-decoration 属性的一个小应用。 装饰超链接网页默认的链接方式是这样的:未访问过的链接是蓝色文字并带蓝色的下划线,访问过的超级链接是深紫色的文字并带深紫色的下划线。如果您所有的网页都是这种样式,是不是很单调呢?其实,利用文本属性中的 Text-decoration 属性就可以实现对超链接的修饰。我们先看下面的这段代码:link css 未访问的链接 /*加链接,显示三种不同状态,并且定义了链接文本的字体和大小*/ 访问过的链接 鼠标激活的链接 您如果想看上述代码的效果,请 点击这里 。我们从例子中看到没有访问过的链
17、接以绿色显示,并且去掉了下划线;而访问过的链接以红色且没有下划线显示;另外,当鼠标激活链接时,链接以蓝色显示,并且加上了上划线。这种效果是怎么实现的呢?它除了运用了文本属性中的 text-decoration 属性,而且采用了伪类元素。通过上面的代码注释,相信您应该对伪类元素有一个大概认识。实际上我们用到的这种伪类应当称之为“锚伪类” ,它规定了链接不同状态下的效果。 怎么样,是不是很简单的就可以实现动态链接的效果,赶紧自己动手试一试吧!下一节我将向您介绍“ 容器” 属性。 4、“容器”属性 边距属性听起来是不是很有趣,什么叫“容器” 属性呢?CSS 的容器属性包括边距、填充距、边框和宽度、高度、浮动、清除等属性。您想,网页中的内容肯定是都需要“装” 进这个“ 容器” 里。“容器”属性是 CSS 中非常重要的一种属性,我们将分类进行学习。先来看一下边距属性的详细列表: 和 font 属性一样,表中的四个属性可以用一个属性一次。边距顺序是上、右、下、左。我们还是用定义边距属性前后的两个例子来看一下吧。请看下面的这幅图:我们看到上图是没有加上边距属性的效果,而下图则在中加入了如下代码: bodymargin:1em 2em 3em 4em/*定义文本的上、右、下、左的边距分别为 1、2、3、4em*/ 产生的效果如下图所示: