550 likes | 746 Views
第九讲 DW 中的 CSS 样式. 《 网页开发工具 》 第九讲 CSS 样式. 9.1 什么是 CSS 样式. CSS 是 Cascading style sheet 的缩写,可翻译为“层叠样式表”或“级联样式表”。 样式表是 DHTML 的一部分,使得可以使用脚本程序调用和改变对象属性,使网页中的对象产生动态的效果。. 《 网页开发工具 》 第九讲 CSS 样式.
E N D
《网页开发工具》第九讲 CSS样式 9.1 什么是CSS样式 CSS是Cascading style sheet的缩写,可翻译为“层叠样式表”或“级联样式表”。 样式表是DHTML的一部分,使得可以使用脚本程序调用和改变对象属性,使网页中的对象产生动态的效果。
《网页开发工具》第九讲 CSS样式 网页设计最初是用HTML标记来定义页面文档及格式,例如标题<h1>、段落<p>、表格<table>、链接<a>等,但这些标记不能满足更多的文档样式需求,在1997年W3C(The World Wide Web Consortium)颁布HTML4标准的同时也公布了有关样式表的第一个标准CSS1, 自CSS1的版本之后,又在1998年5月发布了CSS2版本,样式表得到了更多的充实。W3C把DHTML(Dynamic HTML)分为三个部分来实现:脚本语言(包括JavaScript、Vbscript等)、支持动态效果的浏览器(包括Internet Explorer、Netscape Navigator等)和CSS样式表。
《网页开发工具》第九讲 CSS样式 样式表一般可以实现下列功能: 1、更加灵活地控制网页中文字的字体、颜色、大小间距等; 2、灵活地设置一个文本块的行高缩进并可以加入三维效果的边框; 3、可以为网页中各种元素设置各种滤镜,从而产生诸如阴影、模糊和透明等只有在一些图象处理软件中才能实现的效果; 4、与脚本语言相结合,使网页中元素产生各种动态效果; 5、由于是直接的html格式代码,网页打开的速度快。
《网页开发工具》第九讲 CSS样式 一个CSS例子 (1)选择“窗口”|“CSS样式”,打开样式窗口; (2)选择“新建样式”按钮,出现新建CSS样式对话框,在选择器类型中选择“高级”,在“名称”下拉列表中选择a:active,单击确定按钮,弹出样式定义对话框,在该对话框中的分类列表中选择不同的分类进行设置来定义不同的样式。 (3)样式一建立:为链接文字建立样式,当鼠标移至链接文字时,下划线消失,链接背景变为灰色。 (4)在页面中输入文字,为文字建立空链接。预览观看效果。
《网页开发工具》第九讲 CSS样式 9.1 CSS基础语法 1.基础语法 CSS的定义是由三个部分构成:选择符(selector),属性(properties)和属性的取值(value)。基本格式如下:selector {property: value} (选择符 {属性:值})
《网页开发工具》第九讲 CSS样式 选择符是可以是多种形式,一般是你要定义样式的HTML标记,例如BODY、P、TABLE……,你可以通过此方法定义它的属性和值,属性和值要用冒号隔开:body {color: black}选择符body是指页面主体部分,color是控制文字颜色的属性,black是颜色的值,此例的效果是使页面中的文字为黑色。
《网页开发工具》第九讲 CSS样式 如果属性的值是多个单词组成,必须在值上加引号,比如字体的名称经常是几个单词的组合:p {font-family: "sans serif"}(定义段落字体为sans serif) 如果需要对一个选择符指定多个属性时,我们使用分号将所有的属性和值分开:p {text-align: center; color: red} (段落居中排列;并且段落中的文字为红色)
《网页开发工具》第九讲 CSS样式 为了使你定义的样式表方便阅读,你可以采用分行的书写格式:p{text-align: center;color: black;font-family: arial}(段落排列居中,段落中文字为黑色,字体是arial)
《网页开发工具》第九讲 CSS样式 • 选择符组 • 可以把相同属性和值的选择符组合起来书写,用逗号将选择符分开,这样可以减少样式重复定义:h1, h2, h3, h4, h5, h6 { color: green }(这个组里包括所有的标题元素,每个标题元素的文字都为绿色)p, table{ font-size: 9pt }(段落和表格里的文字尺寸为9号字)效果完全等效于:p { font-size: 9pt }table { font-size: 9pt }
《网页开发工具》第九讲 CSS样式 3.类选择符 用类选择符你能够把相同的元素分类定义不同的样式,定义类选择符时,在自定类的名称前面加一个点号。假如你想要两个不同的段落,一个段落向右对齐,一个段落居中,你可以先定义两个类:p.right {text-align: right}p.center {text-align: center}
《网页开发工具》第九讲 CSS样式 然后用不在不同的段落里,只要在HTML标记里加入你定义的class参数:<p class="right">这个段落向右对齐的</p> <p class="center">这个段落是居中排列的</p>注意:类的名称可以是任意英文单词或以英文开头与数字的组合,一般以其功能和效果简要命名。
《网页开发工具》第九讲 CSS样式 类选择符还有一种用法,在选择符中省略HTML标记名,这样可以把几个不同的元素定义成相同的样式:.center {text-align: center}(定义.center的类选择符为文字居中排列)这样的类可以被应用到任何元素上。下面我们使h1元素(标题1)和p元素(段落)都归为“center”类,这使两个元素的样式都跟随“.center”这个类选择符:<h1 class="center">这个标题是居中排列的</h1><p class="center">这个段落也是居中排列的</p>注意:这种省略HTML标记的类选择符是经后最常用的CSS方法,使用这种方法,我们可以很方便的在任意元素上套用预先定义好的类样式。
《网页开发工具》第九讲 CSS样式 4.ID选择符 在HTML页面中ID参数指定了某个单一元素,ID选择符是用来对这个单一元素定义单独的样式。ID选择符的应用和类选择符类似,只要把CLASS换成ID即可。将上例中类用ID替代:<p id="intro">这个段落向右对齐</p>定义ID选择符要在ID名称前加上一个“#”号。和类选择符相同,定义ID选择符的属性也有两种方法。(字体尺寸为默认尺寸的110%;粗体;蓝色;背景颜色透明)
《网页开发工具》第九讲 CSS样式 下面这个例子,ID属性将匹配所有id="intro"的元素:#intro{font-size:110%;font-weight:bold;color:#0000ff;background-color:transparent}
《网页开发工具》第九讲 CSS样式 下面这个例子,ID属性只匹配id="intro"的段落元素:p#intro{font-size:110%;font-weight:bold;color:#0000ff;background-color:transparent}注意:ID选择符局限性很大,只能单独定义某个元素的样式,一般只在特殊情况下使用。
《网页开发工具》第九讲 CSS样式 5. 包含选择符 可以单独对某种元素包含关系定义的样式表,元素1里包含元素2,这种方式只对在元素1里的元素2定义,对单独的元素1或元素2无定义,例如:table a{font-size: 12px}在表格内的链接改变了样式,文字大小为12象素,而表格外的链接的文字仍为默认大小。
《网页开发工具》第九讲 CSS样式 6. 样式表的层叠性 层叠性就是继承性,样式表的继承规则是外部的元素样式会保留下来继承给这个元素所包含的其他元素。事实上,所有在元素中嵌套的元素都会继承外层元素指定的属性值,有时会把很多层嵌套的样式叠加在一起,除非另外更改。例如在DIV标记中嵌套P标记:div { color: red; font-size:9pt}……<div><p>这个段落的文字为红色9号字</p></div>(P元素里的内容会继承DIV定义的属性)
《网页开发工具》第九讲 CSS样式 另外,当样式表继承遇到冲突时,总是以最后定义的样式为准。如果上例中定义了P的颜色:div { color: red; font-size:9pt}p {color: blue}……<div><p>这个段落的文字为蓝色9号字</p></div>我们可以看到段落里的文字大小为9号字是继承div属性的,而color属性则依照最后定义的。
《网页开发工具》第九讲 CSS样式 不同的选择符定义相同的元素时,要考虑到不同的选择符之间的优先级。ID选择符,类选择符和HTML标记选择符,因为ID选择符是最后加上元素上的,所以优先级最高,其次是类选择符。如果想超越这三者之间的关系,可以用!important提升样式表的优先权,例如:p { color: #FF0000!important }.blue { color: #0000FF}#id1 { color: #FFFF00}我们同时对页面中的一个段落加上这三种样式,它最后会依照被!important申明的HTML标记选择符样式为红色文字。如果去掉!important,则依照优先权最高的ID选择符为黄色文字。
《网页开发工具》第九讲 CSS样式 7. 注释可以在CSS中插入注释来说明代码的意思,注释有利于你或别人以后编辑和更改代码时理解代码的含义。在浏览器中,注释是不显示的。CSS注释以"/*" 开头,以"*/" 结尾,如下:/* 定义段落样式表 */p{text-align: center; /* 文本居中排列 */color: black; /* 文字为黑色 */font-family: arial /* 字体为arial */}
《网页开发工具》第九讲 CSS样式 8.伪类——动态链接 伪类可以看做是一种特殊的类选择符,是能被支持CSS的浏览器自动所识别的特殊选择符。它的最大的用处就是可以对链接在不同状态下定义不同的样式效果。 伪类的语法是在原有的语法里加上一个伪类(pseudo-class):selector:pseudo-class {property: value}(选择符:伪类 {属性: 值})伪类和类不同,是CSS已经定义好的,不能象类选择符一样随意用别的名字,根据上面的语法可以解释为对象(选择符)在某个特殊状态下(伪类)的样式。类选择符及其他选择符也同样可以和伪类混用:selector.class:pseudo-class {property: value} (选择符.类:伪类 {属性: 值})
《网页开发工具》第九讲 CSS样式 锚的伪类我们最常用的是4种a(锚)元素的伪类,它表示动态链接在4种不同的状态:link、visited、active、hover(未访问的链接、已访问的链接、激活链接和鼠标停留在链接上)。我们把它们分别定义不同的效果:a:link {color: #FF0000; text-decoration: none} /* 未访问的链接 */a:visited {color: #00FF00; text-decoration: none} /* 已访问的链接 */a:hover {color: #FF00FF; text-decoration: underline} /* 鼠标在链接上 */a:active {color: #0000FF; text-decoration: underline} /* 激活链接 */
《网页开发工具》第九讲 CSS样式 (上面这个例子中,这个链接未访问时的颜色是红色并无下划线,访问后是绿色并无下划线,激活链接时为蓝色并有下划线,鼠标在链接上时为紫色并有下划线)注意:有时这个链接访问前鼠标指向链接时有效果,而链接访问后鼠标再次指向链接时却无效果了。这是因为你把a:hover放在了a:visited的前面,这样的话由于后面的优先级高,当访问链接后就忽略了a:hover的效果。所以根据叠层顺序,我们在定义这些链接样式时,一定要按照a:link, a:visited, a:hover, a:actived的顺序书写。
《网页开发工具》第九讲 CSS样式 伪类和类选择符将伪类和类组合起来用,就可以在同一个页面中做几组不同的链接效果了,例如,我们定义一组链接为红色,访问后为蓝色;另一组为绿色,访问后为黄色:a.red:link {color: #FF0000}a.red:visited {color: #0000FF}a.blue:link {color: #00FF00}a.blue:visited {color: #FF00FF}现在应用在不同的链接上:<a class="red" href="...">这是第一组链接</a><a class="blue" href="...">这是第二组链接</a>
《网页开发工具》第九讲 CSS样式 其他伪类此外CSS2还定义了首字和首行(first-letter和first-line)的伪类,可以对元素的首字或首行设定不同的样式。下面看这个例子,我们在段落标记里定义文本首字尺寸为默认大小的3倍:<style type=”text/css”>p:first-letter {font-size: 300%}</style>……<p>这是一个段落,这个段落的首字被放大了。</p>
《网页开发工具》第九讲 CSS样式 我们再定义一个首行样式的例子:<style type=”text/css”>div:first-line {color: red}</style>……<div><p>这是段落的第一行这是段落的第二行这是段落的第三行</p></div>(上例中段落的第一行为红色,第二、三行为默认颜色)
《网页开发工具》第九讲 CSS样式 9.2 如何在网页中插入CSS • 在页面中插入样式表的方法有四种: • 链入外部样式表 • 内部样式表 • 导入外表样式表 • 内嵌样式
《网页开发工具》第九讲 CSS样式 1、链入外部样式表链入外部样式表是把样式表保存为一个样式表文件,然后在页面中用<link>标记链接到这个样式表文件,这个<link>标记必须放到页面的<head>区内,如下:<head>……<link rel="stylesheet" type="text/css" href="mystyle.css">……</head>上面这个例子表示浏览器从mystyle.css文件中以文档格式读出定义的样式表。rel=”stylesheet”是指在页面中使用这个外部的样式表。type=”text/css”是指文件的类型是样式表文本。href=”mystyle.css”是文件所在的位置。
《网页开发工具》第九讲 CSS样式 一个外部样式表文件可以应用于多个页面。当你改变这个样式表文件时,所有页面的样式都随之而改变。在制作大量相同样式页面的网站时,非常有用,不仅减少了重复的工作量,而且有利于以后的修改、编辑,浏览时也减少了重复下载代码。样式表文件可以用任何文本编辑器(例如:记事本)打开并编辑,一般样式表文件扩展名为.css。内容是定义的样式表,不包含HTML标记,mystyle.css这个文件的内容如下:hr {color: sienna} p {margin-left: 20px}body {background-image: url("images/back40.gif")}(定义水平线的颜色为土黄;段落左边的空白边距为20象素;页面的背景图片为images目录下的back40.gif文件)
《网页开发工具》第九讲 CSS样式 2、内部样式表内部样式表是把样式表放到页面的<head>区里,这些定义的样式就应用到页面中了,样式表是用<style>标记插入的,从下例中可以看出<style>标记的用法:<head>……<style type="text/css">hr {color: sienna}p {margin-left: 20px}body {background-image: url("images/back40.gif")}</style>……</head>
《网页开发工具》第九讲 CSS样式 注意:有些低版本的浏览器不能识别style标记,这意味着低版本的浏览器会忽略style标记里的内容,并把style标记里的内容以文本直接显示到页面上。为了避免这样的情况发生,我们用加HTML注释的方式(<!-- 注释 -->)隐藏内容而不让它显示:<head>……<style type="text/css"><!--hr {color: sienna}p {margin-left: 20px}body {background-image: url("images/back40.gif")}--></style>……</head>
《网页开发工具》第九讲 CSS样式 3、导入外部样式表导入外部样式表是指在内部样式表的<style>里导入一个外部样式表,导入时用@import,看下面这个实例:<head>……<style type=”text/css”><!--@import “mystyle.css”其他样式表的声明--></style>……</head> 例中@import “mystyle.css”表示导入mystyle.css样式表,注意使用时外部样式表的路径。方法和链入样式表的方法很相似,但导入外部样式表输入方式更有优势。实质上它相当于存在内部样式表中的。注意:导入外部样式表必须在样式表的开始部分,在其他内部样式表上面。
《网页开发工具》第九讲 CSS样式 4、内嵌样式内嵌样式是混合在HTML标记里使用的,用这种方法,可以很简单的对某个元素单独定义样式。内嵌样式的使用是直接将在HTML标记里加入style参数。而style参数的内容就是CSS的属性和值,如下例:<p style="color: sienna; margin-left: 20px">这是一个段落</p>(这个段落颜色为土黄,左边距为20象素)在style参数后面的引号里的内容相当于在样式表大括号里的内容。注意:style参数可以应用于任意BODY内的元素(包括BODY本事),除了BASEFONT、PARAM和SCRIPT。
《网页开发工具》第九讲 CSS样式 5、多重样式表的叠加 如果在同一个选择器上使用几个不同的样式表时,这个属性值将会叠加几个样式表,遇到冲突的地方会以最后定义的为准。例如,我们首先链入一个外部样式表,其中定义了h3选择符的color 、text-alig和font-size属性:h3 {color: red;text-align: left;font-size: 8pt}(标题3的文字颜色为红色;向左对齐;文字尺寸为8号字)
《网页开发工具》第九讲 CSS样式 在内部样式表里也定义了h3选择符的text-align和font-size属性:h3 {text-align: right; font-size: 20pt}(标题3文字向右对齐;尺寸为20号字)那么这个页面叠加后的样式就是:color: red; text-align: right; font-size: 20pt(文字颜色为红色;向右对齐;尺寸为20号字)字体颜色从外部样式表里保留下来,而对齐方式和字体尺寸都有定义时,按照后定义的优先而依照内部样式表。注意:依照后定义的优先,所以优先级最高的是内嵌样式,内部样式表高于导入外部样式表,链入的外部样式表和内部样式表之间是最后定义的优先级高。
《网页开发工具》第九讲 CSS样式 小结:CSS样式是由一个个的属性及它们的属性值组成的,要控制CSS样式表,必须先掌握其各个属性的功能和使用方法。 1、类型属性:字体(font-family)、大小、粗细、样式、变形、行高、大小写、修饰、颜色; 2、背景:背景颜色(background-color)、背景图象( background-image)、重复、附加; 3、区块:单词间距(word-spacing)、字母间距(letter-spacing)、垂直对齐、文本对齐、文字缩进、空白间距; 4、盒子:方框类属性和边框类属性都针对盒子,CSS将网页中所有元素都看作包含在一个盒子中,盒子分为4部分(间隔——边框——留白——盒子内容),有宽、高、边距颜色等属性; 5、定位:position(absolute\relative\static)、Z轴、显示、溢出等; 6、扩展:分页中的之前和之后属性为打印的页面设置分页符号,视觉效果为网页中的元素施加特殊效果(光标cursor指定在某个元素上要使用的光标形状,滤镜filter可以为元素施加各种奇妙的滤镜效果)。
《网页开发工具》第九讲 CSS样式 9.3 CSS中的滤镜效果 CSS滤镜属性(Filter Properties)可以把可视化的滤镜和转换效果添加到一个标准的html元素上,如图片、文本块以及其他一些对象。
《网页开发工具》第九讲 CSS样式 Css滤镜的构成 Fitler既然是CSS样式表中的一员,那么它就像其他样式一样,可以直接定义在HTML标识的<head></head>之间,语法结构为: HTML标志{filter:名称(参数及其值)} 如:内部引用 imgblur{filter:blur(strength=30)} 或者通过style标志定义在HTML的标识里面,如: <image ID=test SRC=“test.gif” style=“Filter:blur(strength=30)”> 局部插入
《网页开发工具》第九讲 CSS样式 与其他样式的定义方式一样,滤镜也分为外部调用、内部引用和局部插入三种。 以上第一个例子为内部引用,第二个例子为局部插入,外部调用则要现建立一个CSS文件,然后将<link rel=stylesheet type=“text/css” href=“样式文件的URL“>语句嵌入到HTML文件中。 CSS中的滤镜有两种,一种是静态滤镜,主要用于使被施加的对象产生各种静态的特殊效果,还有一种是动态滤镜用来处理网页或是HTML对象的显示效果。
《网页开发工具》第九讲 CSS样式 常见静态CSS样式表滤镜: 1、Alpha滤镜:让图象呈现半透明的效果; 2、Blur滤镜:让对象产生风吹模糊的效果; 3、Chroma滤镜:把图片中的某个颜色变成透明的,原图片中的一部分颜色好象没有了一样; 4、dropshadow滤镜:让对象产生下落式的阴影; 5、fliph/flipv滤镜:让对象产生水平和垂直的反转的效果; 6、glow滤镜:在对象的外轮廓上产生一种光晕效果; 7、gray滤镜:将彩色图片变为灰色调;
《网页开发工具》第九讲 CSS样式 8、light滤镜::让对象产生一种模拟光源的投射效果; 9、invert滤镜:产生照片底片的效果; 10、mask 滤镜:利用一个对象在另一个对象上产生图象的遮罩; 11、shadow滤镜:产生有渐进感的阴影; 12、wave滤镜:让对象在垂直方向上产生波浪的变形效果; 13、xray滤镜:显示图片的轮廓,向X光的照片一样。 CSS的动态滤镜:动态滤镜要结合在scripts程序中,由程序加以控制。
《网页开发工具》第九讲 CSS样式 (1)Alpha滤镜 让对象呈现渐变半透明的效果,其各项参数的功能说明如下:
《网页开发工具》第九讲 CSS样式 (2)Blur滤镜 让对象产生风吹模糊的效果,其各项参数的功能说明如下:
《网页开发工具》第九讲 CSS样式 (3)Chroma滤镜 Chroma滤镜主要是把图片中的某个颜色变成透明的,使用了该滤镜后,原图片中的一部分颜色就好像没有了一样。 它只有一个参数:Color,用来指定透明的颜色,给不显示出来的颜色。
《网页开发工具》第九讲 CSS样式 (4)DropShadow滤镜 让对象产生下落式的阴影效果,常用在文字或是图像上。
《网页开发工具》第九讲 CSS样式 (5)FlipH和FlipV滤镜 这两个滤镜可以使网页中的对象产生水平和垂直翻转的效果,没有参数设置,直接使用即可。 (6)Gray滤镜 主要是将一个彩色图片变为灰色调的效果,该滤镜也没有参数,直接使用即可。
《网页开发工具》第九讲 CSS样式 (7)Glow滤镜 让对象产生一种光晕效果,常用参数如下:
《网页开发工具》第九讲 CSS样式 (8)Invert滤镜 能使图像产生照片图片的效果,一般适用于图像对象。 (9)Light滤镜 该滤镜能够使HTML对象产生一种模拟光源的投射效果,一旦为对象定义了Light滤镜属性,就可以调用它的方法来设置或改变属性。可用的方法有:MoveLight(移动光源)、ChangColor(改变光的颜色)、AddAmbient(加入包围的光源)、AddPoint(加入点光源)、Clear(清除所有的光源)、AddCone(加入锥形光源)、Changstrength(改变光源的强度)。
《网页开发工具》第九讲 CSS样式 (10)Mask滤镜 Mask滤镜的作用是利用一个HTML对象在另一个对象上产生图像的遮罩,可以为对象建立一个覆盖与表面的膜,其效果就像戴着有色眼镜看物体一样,一般适用于图像对象。其参数为: Color遮罩的颜色;#RRGGBB的颜色值。 (11)Shadow滤镜 Shadow滤镜与DropShadow滤镜非常相似,也是使网页中的对象产生下落式的阴影效果,不同的是DropShadow没有渐进感,而Shadow有渐进的阴影感,更真实一些。