第3章层叠式样式表精选文档.ppt
第第3章层叠式样式表章层叠式样式表本讲稿第一页,共四十四页 XML XML 为存储结构化数据提供了强大的方法,为存储结构化数据提供了强大的方法,但是它没有提供关于数据如何但是它没有提供关于数据如何显示的信息,这实际上是显示的信息,这实际上是XML XML 的优点(数据的优点(数据的结构完全与数据表示无关)。当有必要表的结构完全与数据表示无关)。当有必要表示格式化示格式化XML XML 文件中的数据时,格式化的详文件中的数据时,格式化的详细信息放置在细信息放置在CSS CSS 中。中。【教学提示教学提示】本讲稿第二页,共四十四页 理解理解CSS 的概念的概念 掌握掌握CSS 的方法的方法 掌握掌握CSS 与与XML 结合的方法结合的方法【教学目标教学目标】【参见例子参见例子:对比例子对比例子first_exp.xml,second_exp.xml,second_exp.css】本讲稿第三页,共四十四页3.1 CSS 简介简介 在前面的知识中曾经介绍过,单纯的在前面的知识中曾经介绍过,单纯的XML XML 文档文档只是为数据提供结构,但是它没有涉及数据如何显示,只是为数据提供结构,但是它没有涉及数据如何显示,CSS CSS 是用于为是用于为XML XML 数据定义显示参数的一种技术,它利数据定义显示参数的一种技术,它利用简单的规则来控制元素内容在浏览器中的表现方式。用简单的规则来控制元素内容在浏览器中的表现方式。本讲稿第四页,共四十四页 CSS CSS 最初是被开发用来为最初是被开发用来为HTML HTML 文档指定显示的,文档指定显示的,同时也适合于同时也适合于XML XML 数据。样式表中的显示规范与数据。样式表中的显示规范与XML XML 数据分离,这意味着相同的数据通过应用不同的样式数据分离,这意味着相同的数据通过应用不同的样式表可以不同的方式显示。同样,相同的样式表可以应表可以不同的方式显示。同样,相同的样式表可以应用到多个用到多个XML XML 文件中。文件中。3.1 CSS 简介简介本讲稿第五页,共四十四页3.1.1 CSS 3.1.1 CSS 的概念的概念 CSS(Cascading Style Sheet)CSS(Cascading Style Sheet)层叠样式表层叠样式表,也称为也称为级联样式表级联样式表,用来进行网页风格设计。,用来进行网页风格设计。在网页制作时采用在网页制作时采用CSS CSS 技术,可以有效地对技术,可以有效地对页面的布局、字体、颜色、背景和其他效果实页面的布局、字体、颜色、背景和其他效果实现更加精确的控制。只要对相应的代码做一些现更加精确的控制。只要对相应的代码做一些简单的修改,就可以改变同一页面的不同部分,简单的修改,就可以改变同一页面的不同部分,或者不同页面的网页的外观和格式。或者不同页面的网页的外观和格式。本讲稿第六页,共四十四页3.1.2 CSS3.1.2 CSS技术简介技术简介CSSCSS即层叠样式表或级联样式表,是目即层叠样式表或级联样式表,是目前在浏览器上按一定格式显示前在浏览器上按一定格式显示XMLXML文档文档内容的主要方法之一。内容的主要方法之一。CSSCSS样式表中包含了一组设置元素显示样样式表中包含了一组设置元素显示样式的规则,最初被用来控制式的规则,最初被用来控制HTMLHTML文档内文档内容的显示格式,同样能够用来控制容的显示格式,同样能够用来控制XMLXML文档内容的显示格式。文档内容的显示格式。本讲稿第八页,共四十四页XMLXML和和HTMLHTML所采用的所采用的CSSCSS语法是相通的,语法是相通的,都是通过一组特定的属性设置来规定都是通过一组特定的属性设置来规定某个元素内容的显示格式。可设置的某个元素内容的显示格式。可设置的元素显示属性包括:文字的字型、字元素显示属性包括:文字的字型、字体、大小和颜色,元素内容在页面中体、大小和颜色,元素内容在页面中的位置、是否分段、对齐方式,是否的位置、是否分段、对齐方式,是否添加边框、背景、下划线等等。添加边框、背景、下划线等等。3.1.2 CSS3.1.2 CSS技术简介技术简介本讲稿第九页,共四十四页n 创建专门的样式表文件,把控制元素显创建专门的样式表文件,把控制元素显示格式的相关指令放在其中,使其与示格式的相关指令放在其中,使其与XMLXML文文档的数据内容分开,可以大大提高控制档的数据内容分开,可以大大提高控制XMLXML文档文档显示方式的灵活性,并可使得样式表本身更加显示方式的灵活性,并可使得样式表本身更加容易维护。容易维护。n 相对于相对于XSLXSL(可扩展样式表语言)技术而言,(可扩展样式表语言)技术而言,采用采用CSSCSS技术来显示技术来显示XMLXML文档的做法还是有局文档的做法还是有局限性的。限性的。3.1.2 CSS3.1.2 CSS技术简介技术简介本讲稿第十页,共四十四页n CSS CSS样式表是一个以样式表是一个以.css.css为文件扩展名的为文件扩展名的纯纯文本文件文本文件,可以使用,可以使用“记事本记事本”等文本编辑等文本编辑器来建立器来建立CSSCSS样式表文件。样式表文件。n 为了引用创建好的样式表文件来格式化显为了引用创建好的样式表文件来格式化显示示XMLXML文档的内容,必须将相应的样式表文文档的内容,必须将相应的样式表文件链接到这个件链接到这个XMLXML文档中。只需在文档中。只需在xmlxml文档中文档中增加下面的链接语句即可:增加下面的链接语句即可:?xml:stylesheet?3.1.2 CSS3.1.2 CSS技术简介技术简介本讲稿第十一页,共四十四页3.2 CSS3.2 CSS基本语法基本语法1 1CSSCSS语句的基本格式语句的基本格式【基本格式基本格式】选择符选择符 属性属性1:1:属性值属性值1;1;属性属性2:2:属性属性值值2 2 本讲稿第十二页,共四十四页【注释注释】选择符(选择符(selector)用来指定该规则所适用的元素,)用来指定该规则所适用的元素,由一个或多个由一个或多个元素名元素名或特定的或特定的标识标识构成;构成;紧跟其后的是用花括号紧跟其后的是用花括号“”括起来的若干对属性名括起来的若干对属性名与相应的属性值,用来对选择符所指定的元素设置具与相应的属性值,用来对选择符所指定的元素设置具体的显示样式。体的显示样式。花括号中的每一个属性名与相应的属性值之间须用冒花括号中的每一个属性名与相应的属性值之间须用冒号号“:”分隔;而各对属性之间则须用分号分隔;而各对属性之间则须用分号“;”隔开。隔开。3.2 CSS3.2 CSS基本语法基本语法本讲稿第十三页,共四十四页Pbackground-color:red;font-size:12pt;color:black Pbackground-color:red;font-size:12pt;color:black 上面分别设置了背景色、字体大小以及字体颜色等。上面分别设置了背景色、字体大小以及字体颜色等。为了看起来直观一些,还可以写成:为了看起来直观一些,还可以写成:P background-color:red;P background-color:red;font-size:12pt;font-size:12pt;color:black color:black 下面是样式表的一个简单的例子:下面是样式表的一个简单的例子:3.2 CSS3.2 CSS基本语法基本语法本讲稿第十四页,共四十四页3.2 CSS3.2 CSS基本语法基本语法2 2、CSSCSS中的注释中的注释 样式表文件也可以包含注释语句,添加注释文样式表文件也可以包含注释语句,添加注释文字有助于样式表更具可读性。注释语句由斜线加字有助于样式表更具可读性。注释语句由斜线加上星号上星号“/*/*”作为开始,以星号加斜线作为开始,以星号加斜线“*/”作作为结束,在这两个特定标记之间可以输入任何想为结束,在这两个特定标记之间可以输入任何想要说明的文字。要说明的文字。本讲稿第十五页,共四十四页3 3CSSCSS中字母的大小写中字母的大小写 对于对于IE IE 浏览器而言,浏览器而言,CSSCSS中字母的大小写中字母的大小写是不加区分的是不加区分的。但当。但当CSSCSS应用于应用于XMLXML文档时,文档时,忽略字母的大小写将会带来一定的问题。如果忽略字母的大小写将会带来一定的问题。如果想使用想使用CSSCSS来显示来显示XMLXML文档,文档,就应该让文档中各就应该让文档中各种元素的名称都完全不同种元素的名称都完全不同,而不仅仅是字母大,而不仅仅是字母大小写的不同。小写的不同。3.2 CSS3.2 CSS基本语法基本语法本讲稿第十六页,共四十四页3.2 CSS3.2 CSS基本语法基本语法4 4、CSSCSS中属性的继承中属性的继承 通常情况下,通常情况下,在在CSSCSS中为某个元素所设置的中为某个元素所设置的显示格式属性会影响到该元素所包含的所有子显示格式属性会影响到该元素所包含的所有子元素,除非这些子元素重新设置了不同的格式元素,除非这些子元素重新设置了不同的格式属性。属性。本讲稿第十七页,共四十四页注:注:不能使用中文作为元素名称。不能使用中文作为元素名称。5 5在在CSSCSS使用中文使用中文 如果要在如果要在CSSCSS中使用中文简体字符集,需中使用中文简体字符集,需要在要在CSSCSS文件的文件的第一行第一行加上如下指令:加上如下指令:charset gb2312;charset gb2312;3.2 CSS3.2 CSS基本语法基本语法本讲稿第十八页,共四十四页1 1、CSSCSS的链接使用一般链接指令的链接使用一般链接指令 一般可以在一般可以在XMLXML文档的开头使用文档的开头使用xml:stylesheetxml:stylesheet处理指处理指令将指定的令将指定的CSSCSS样式表链接进来。样式表链接进来。【格式格式】【注释注释】?xml:stylesheet?xml:stylesheet表示当前表示当前XMLXML文档在显示时需要使文档在显示时需要使用样式单并告诉用样式单并告诉IEIE不使用默认的树状结构。不使用默认的树状结构。type=type=“text/csstext/css”表示使用表示使用CSSCSS类型的样式单;类型的样式单;href=urlhref=url用来指定样式单文件的用来指定样式单文件的URLURL。3.3 CSS3.3 CSS选择符与链接选择符与链接【参见例子参见例子:book.xml,:book.xml,cssforbook.csscssforbook.css】本讲稿第十九页,共四十四页3.3 CSS3.3 CSS选择符与链接选择符与链接选择符可以是选择符可以是*或者元素名或者元素名2 2使用多个元素与多个规则使用多个元素与多个规则 如果想把一组属性应用于多个元素,即对同一标如果想把一组属性应用于多个元素,即对同一标记指定特定样式,可以用记指定特定样式,可以用逗号逗号将选择符中所有元素将选择符中所有元素分开,然后再定义属性的具体值。分开,然后再定义属性的具体值。【参见例子参见例子:book01.xml;css_book01.css:book01.xml;css_book01.css】本讲稿第二十页,共四十四页3 3、使用、使用CLASSCLASS属性属性 要求同一个标记在文档的不同地方使用不同样式,要求同一个标记在文档的不同地方使用不同样式,使用使用classclass属性时要用到属性时要用到”.”【参见例子参见例子:book02.xml;css_book02.css:book02.xml;css_book02.css】如果如果XMLXML文档中有一个标记没有定义样式,则文档中有一个标记没有定义样式,则该标记将使用父标记的样式,即该标记将使用父标记的样式,即继承继承3.3 CSS3.3 CSS选择符与链接选择符与链接本讲稿第二十一页,共四十四页3.3 CSS3.3 CSS选择符与链接选择符与链接4 4、使用、使用IDID属性属性 IDID和和ClassClass在应用上相似,但在应用上相似,但IDID侧重于定义侧重于定义一个元素的独有特性,一个元素的独有特性,classclass侧重于定义一类侧重于定义一类元素的公有特性元素的公有特性。在使用方法上二者区别不。在使用方法上二者区别不大,定义大,定义IDID时使用时使用“”【参见例子参见例子:book03.xml;css_book03.css:book03.xml;css_book03.css】本讲稿第二十二页,共四十四页3.3 CSS3.3 CSS选择符与链接选择符与链接5 5、使用、使用importimport指令指令 允许在样式表中允许在样式表中使用使用 import import 指令来引入一个或指令来引入一个或多个独立保存的样式表多个独立保存的样式表,即将这些样式表包含的规,即将这些样式表包含的规则添加到当前样式表中来。则添加到当前样式表中来。【格式格式】import url(StyleSheetURL)import url(StyleSheetURL);本讲稿第二十三页,共四十四页【注释注释】StyleSheetURL 表示想要引入的样式表文件的表示想要引入的样式表文件的URL,可以是本地或网络上样式表文件的绝对路径或,可以是本地或网络上样式表文件的绝对路径或相对路径。相对路径。本指令必须放置在本指令必须放置在CSS样式表的开头,且尾部的分号样式表的开头,且尾部的分号“;”不能少,不能少,URL后面采用()。后面采用()。【参见例子参见例子:book04.xml;css_book04.css】3.3 CSS3.3 CSS选择符与链接选择符与链接本讲稿第二十四页,共四十四页3.3 CSS3.3 CSS选择符与链接选择符与链接6 6、!important!important声明声明 如果把如果把!important!important声明和属性连结起来,声明和属性连结起来,该属性将不被覆盖。该属性将不被覆盖。【参见例子参见例子:book05.xml;css_book05.css:book05.xml;css_book05.css】本讲稿第二十五页,共四十四页7 7、使用、使用STYLE STYLE 属性属性 使用使用HTMLHTML的的stylestyle标记直接将样式语句写在标记直接将样式语句写在XMLXML文档内部文档内部 由于使用由于使用HTMLHTML标记来实现标记来实现XMLXML的嵌套样式,的嵌套样式,所以必须指定所用所以必须指定所用stylestyle标记的出处:标记的出处:xmlns:HTML=xmlns:HTML=“http:/www.w3.org/profiles/XHTML-http:/www.w3.org/profiles/XHTML-transitionaltransitional”(xmlnsxmlns是指名域空间技术)是指名域空间技术)【参见例子参见例子:book07.xml:book07.xml】本讲稿第二十六页,共四十四页3.3 CSS3.3 CSS选择符与链接选择符与链接8 8、样式应用说明、样式应用说明u如果没有为子元素设置特定的样式规则,如果没有为子元素设置特定的样式规则,将会自动将会自动继承继承父元素的规则。父元素的规则。u如果在样式表中并没有为某个元素设置如果在样式表中并没有为某个元素设置样式规则,也没有父元素的样式规则可以样式规则,也没有父元素的样式规则可以继承,则浏览器将使用自己设定的规则。继承,则浏览器将使用自己设定的规则。u如果在同一个层级中,如果在同一个层级中,某个元素的属性被某个元素的属性被赋予了冲突的属性值,则浏览器将会采用所赋予了冲突的属性值,则浏览器将会采用所处理的处理的最后属性最后属性设定。设定。u可以使用可以使用 !important!important 关键字来特别声明该关键字来特别声明该规则是重要的和必需使用的。规则是重要的和必需使用的。本讲稿第二十七页,共四十四页3.4 3.4 将将CSSCSS与与XMLXML结合结合1 1、外部样式文件、外部样式文件【参见例子参见例子:book06.xml;css_book06.cssbook06.xml;css_book06.css】2、将样式语句嵌入到、将样式语句嵌入到XML文件中文件中【参见例子参见例子:book07.xmlbook07.xml】3 3、混合方式指定样式、混合方式指定样式综合使用以上综合使用以上2 2种方法来给种方法来给XMLXML添加样式添加样式【参见例子参见例子:book08.xmlbook08.xml】本讲稿第二十八页,共四十四页4 4、使用多个样式文件、使用多个样式文件一个一个XMLXML文档能够调用多个的样式文件文档能够调用多个的样式文件?xml:stylesheet type=text/css href=url1?xml:stylesheet type=text/css href=url2?若发生冲突,则以后面包含进来的文件定若发生冲突,则以后面包含进来的文件定义的样式为主义的样式为主本讲稿第二十九页,共四十四页3.5 3.5 CSSCSS属性与属性值属性与属性值1 1属性关键字属性关键字2 2色彩属性值色彩属性值 与色彩设置有关的属性包括与色彩设置有关的属性包括colorcolor、background-colorbackground-color和和border-colorborder-color等,其中应用最等,其中应用最多的是多的是colorcolor属性。可以使用英文的颜色名称,也可属性。可以使用英文的颜色名称,也可以使用任何一种以使用任何一种RGB RGB 格式来作为色彩属性值。格式来作为色彩属性值。(1 1)使用英文色彩名称)使用英文色彩名称(2 2)使用各种)使用各种RGBRGB表示方式表示方式本讲稿第三十页,共四十四页n 颜色单位颜色单位 16个关键字个关键字:aqua,black,blue,fuchsia,gray,green,lime,maroon,navy,olive,purple,red,silver,teal,white,yellow。3.5 CSS属性与属性值属性与属性值本讲稿第三十一页,共四十四页3尺寸属性值尺寸属性值(1)绝对尺寸值:)绝对尺寸值:in、mm、cm、pt(2)相对尺寸值:)相对尺寸值:px、em、ex(3)百分比尺寸值:)百分比尺寸值:3.5 CSS属性与属性值属性与属性值本讲稿第三十二页,共四十四页em(em,元素的字体的高度,元素的字体的高度)ex(x-height,字母,字母 x 的高度的高度)px(像素,相对于屏幕的分辨率像素,相对于屏幕的分辨率)有效的绝对单位有效的绝对单位:in(英寸,英寸,1英寸英寸=2.54厘米厘米)cm(厘米,厘米,1厘米厘米=10毫米毫米)mm(毫米毫米)pt(点,点,1点点=1/72英寸英寸)pc(帕,帕,1帕帕=12点点)3.5 CSS属性与属性值属性与属性值本讲稿第三十三页,共四十四页3.5 3.5 CSSCSS属性与属性值属性与属性值4 4、设置显示属性、设置显示属性 元素的元素的displaydisplay属性控制了浏览器显示该元素文属性控制了浏览器显示该元素文字的基本方法。可为字的基本方法。可为displaydisplay属性指定下面属性指定下面4 4种属性值种属性值中的任何一种。中的任何一种。blockblock:将元素以块方式显示,通过换行与其将元素以块方式显示,通过换行与其 他元素分开显示;他元素分开显示;inlineinline:在同一行显示元素;在同一行显示元素;nonenone:隐藏元素,使元素在页面中不可见;隐藏元素,使元素在页面中不可见;list-item list-item:以列表方式显示元素。以列表方式显示元素。本讲稿第三十四页,共四十四页3.5 3.5 CSSCSS属性与属性值属性与属性值5 5、常用设置字型属性、常用设置字型属性ufont-familyfont-family属性属性:决定字体的字型如决定字体的字型如arialarialufont-sizefont-size属性:决定字体大小如属性:决定字体大小如largelarge或数值或数值ufont-stylefont-style属性:决定字体风格,属性:决定字体风格,normal/italicnormal/italicufont-weightfont-weight属性属性:决定字体粗细如决定字体粗细如boldbold、lightlightufont-variantfont-variant属性:属性:用于设置打印时英文字体的大小写用于设置打印时英文字体的大小写变变化,化,normal(normal(普通普通)还是还是small-caps(small-caps(小型大写字母小型大写字母)ufontfont属性:综合字体属性属性:综合字体属性本讲稿第三十五页,共四十四页element font-style:italic;element font-style:italic;font-size:20pt;font-size:20pt;font-family:font-family:楷体楷体_gb2312 ;_gb2312 ;【示例示例】element element fontfont:20pt:20pt 楷体楷体_gb2312 italic_gb2312 italic;作用与上面例子等价:作用与上面例子等价:3.5 CSS3.5 CSS属性与属性值属性与属性值本讲稿第三十六页,共四十四页 font-family font-family 属性的参数值可以有几个,在属性的参数值可以有几个,在指定指定font-family font-family 属性的时候,可以同时指定几个字属性的时候,可以同时指定几个字符集。这样,在浏览器找不到第一个字符集的时候可符集。这样,在浏览器找不到第一个字符集的时候可以按顺序使用第二个字符集显示字体以按顺序使用第二个字符集显示字体elementfont-family:elementfont-family:楷体楷体_gb2312,_gb2312,宋体宋体,黑体黑体;【例如例如】【字体字型字体字型font-family font-family 属性属性】3.5 CSS3.5 CSS属性与属性值属性与属性值本讲稿第三十七页,共四十四页6 6、设置布局属性、设置布局属性设置元素位置与大小设置元素位置与大小 marginmargin属性属性:边界属性,边界属性,设置元素的边界设置元素的边界 paddingpadding属性:补白属性,属性:补白属性,一个元素的补白是一个元素的补白是边框和元素的内容之间的间隔的数值边框和元素的内容之间的间隔的数值 3.5 CSS3.5 CSS属性与属性值属性与属性值【参见例子参见例子:css1.xmlcss1.xml】本讲稿第三十九页,共四十四页3.5 3.5 CSSCSS属性与属性值属性与属性值7 7、设置边框属性、设置边框属性uborder-styleborder-style属性:属性:用于设置一个元素边框的样式用于设置一个元素边框的样式如如dotteddotteduborder-colorborder-color属性:属性:用于设置边框的颜色用于设置边框的颜色uborder-widthborder-width属性:属性:用于设置边框的宽度,可取值为用于设置边框的宽度,可取值为thin、medium、thick 或指定尺寸或指定尺寸uborderborder属性属性【参见例子参见例子:book06.xml,css_book06.css:book06.xml,css_book06.css】本讲稿第四十页,共四十四页8 8、设置背景属性、设置背景属性 background-colorbackground-color属性:属性:用于对指定元素设置背景颜色用于对指定元素设置背景颜色 background-imagebackground-image属性:属性:用于对指定元素设置背景图案用于对指定元素设置背景图案 background-repeatbackground-repeat属性:属性:在背景图案小于指定元素的情况下,是否使用重复填充图案在背景图案小于指定元素的情况下,是否使用重复填充图案 background-positionbackground-position属性属性:用于指定背景图案的起始位置用于指定背景图案的起始位置 background-attachmentbackground-attachment属性属性:用于指定设置的背景图案在元素滚动时是否一起滚动用于指定设置的背景图案在元素滚动时是否一起滚动3.5 CSS3.5 CSS属性与属性值属性与属性值本讲稿第四十一页,共四十四页9 9、设置文本属性、设置文本属性uletter-spacingletter-spacing属性属性uword-spacingword-spacing属性属性uvertical-alignvertical-align属性属性utext-aligntext-align属性属性utext-indenttext-indent属性属性uline-heightline-height属性属性utext-transformtext-transform属性属性utext-decorationtext-decoration属性属性【注释参见后页注释参见后页】3.5 CSS3.5 CSS属性与属性值属性与属性值本讲稿第四十二页,共四十四页设置字符间隔,可以增加或减少字符之间的间距设置字符间隔,可以增加或减少字符之间的间距设置字符间隔。其使用方法与设置字符间隔。其使用方法与letter-spacing letter-spacing 类似类似设置或检索对象内容的纵向对齐方式设置或检索对象内容的纵向对齐方式作用于块元素,用来设置块中文本的对齐方式,取值为:作用于块元素,用来设置块中文本的对齐方式,取值为:left(left(左对左对齐齐)、right(right(右对齐右对齐)、center(center(居中居中)、justify(justify(两端对齐两端对齐)设置第一行缩进距离。如设置第一行缩进距离。如nametext-indent:2em nametext-indent:2em,表示第一,表示第一行缩进两个字的长度行缩进两个字的长度控制文本连续行之间的距离,可以用来调整文本垂直线的距离控制文本连续行之间的距离,可以用来调整文本垂直线的距离设置显示文本的字母大小写的显示形式。取值关键字为:设置显示文本的字母大小写的显示形式。取值关键字为:capitalize capitalize,首字母大写;,首字母大写;uppercase uppercase,所有字母都大写;,所有字母都大写;lowercase lowercase,所有字母都小写;所有字母都小写;nonenone,不改变字母的大小写状态,不改变字母的大小写状态声明文本是否有划线,常用来装饰链接。取值关键字为:声明文本是否有划线,常用来装饰链接。取值关键字为:overlineoverline,有上划线;,有上划线;line-through line-through,有穿过文本的删除线;,有穿过文本的删除线;underline underline,有下划线;,有下划线;nonenone,没有任何划线,没有任何划线本讲稿第四十三页,共四十四页练习练习制作由制作由CSS 样式文件设计的全班同学通讯样式文件设计的全班同学通讯录网页。(以五个同学为例子)录网页。(以五个同学为例子)本讲稿第四十四页,共四十四页