CSS 高级语法
- 格式:doc
- 大小:147.50 KB
- 文档页数:21
CSS入门和高级技巧第1天课堂笔记(本课程共8天)目录CSS入门和高级技巧 (1)目录 (2)一、上节课知识的复习 (3)二、表格 (5)2.1 表格的基本使用 (5)2.2 表格单元格的合并 (5)三、div和span标签 (10)3.1 div标签 (10)3.2 span (11)四、HTML杂项 (12)4.1 注释 (12)4.2 字符实体 (12)五、废弃标签介绍 (14)六、CSS整体感知 (15)6.1 简介 (15)6.2 整体感知 (16)6.3 style标签——css的舞台 (17)6.4 css对换行不敏感、缩进不敏感 (17)6.5 分号 (18)6.6 先学几个属性 (18)七、基本选择器 (19)7.1 标签选择器 (19)7.2 id选择器 (20)7.3 类选择器 (21)八、高级选择器 (24)8.1 后代选择器 (24)8.2 交集选择器 (25)8.3 并集选择器 (25)8.4 通配符* (26)九、继承性和层叠性 (27)9.1 继承性 (27)9.2 层叠性 (28)一、上节课知识的复习●一定要会用Chrome浏览器审查别人的网页,还有自己的项目,排错的功能,快捷键是F12。
2008年诞生的谷歌浏览器,一诞生就解决了原来前端工程师调试难的问题。
●插入图片,页面中能够插入的图片类型:jpg、jpeg、bmp、png、gif;不能的psd、fw。
语法:1<img src=”路径” alt=”替代文字” />●相对路径、绝对路径:相对路径就是从html页面出发,找到图片:1<img src=”a/b/1.jpg” />等价于1<img src=”./a/b/1.jpg” />图片位于html文件较浅的文件夹中:1<img src=”../../../1.jpg” />绝对路径:直接的门牌号。
以http://开头,或者以/开头的都是绝对路径。
25个CSS 高级进阶教程如果你对 CSS 的掌握已经到了一定的贯通程度,那么你手中的 CSS 将会为你做很多高级的功能,甚至有时候 CSS 可以帮助解决之前靠 JS 才能解决的问题, 要知道,在 Web 开发过程中, 减少一段 JS 可是对 Web 的运行有足够大的减压作用的。
25个 CSS 高级教程,让你更了解 CSS。
1. 纯 CSS 字体渐变和背景渐变CSS Gradients using pure CSSBackground gradients and CSSCSS Gradient Text EffectPure CSS Text Gradient2. Z-Index 图像重叠Understading Z-IndexCSS Z-index3. CSS 边框创意Create a Scalable Star using using CSS border Border Slants4. 超酷 CSS 效果–控制面板Dashboard5. 纯 CSS 创建 2D/3D 按钮3D Rollover Button using CSSHow to make sexy buttons with CSSCSS rollover buttons6. Text Embossing/Shadow Technique With CSSview plaincopy to clipboardprint?Text EmbossingCSS Text Drop Shadows1. text-shadow: 0px 1px 0px #e5e5ee;7. Iconize Text links/Hyperlink with CSSAdd icon to the hyperlink.Iconize Textlinks with CSS8. CSS Curly QuotesCurly Quotes with Pure CSSSwooshy Curly Quotes Without Images9. Using CSS Opacity for Various Cool EffectsA CSS only fly-out menu with transparency CSS Menu using CSS opacity propertyOpacity Background Blending Effects Transparency Menu Watermark on an image 10. Blurry Background Effecthow to create a blurry background using CSS 11. CSS Parallax EffectExamples of and How to Create the CSS Parallax EffectA parallax illusion with CSS: The Horse in Motion12.Create a Lightbox effect only with CSStechnique13.CSS-Only Accordion Effectcreate Accordion using CSS14. Add grunge Effect to Text Using Simple CSStutorial15.Create a Block Hover /Element Hover EffectLearn how to create a block hover effect for a list of linksCSS element hover effect.16. Simple Dither Effect using CSSdither effect using17. Create a liDock MenuHorizontal Menus That Grow on You 18. CSS Hover Swap EffectCSS swap hover effect19. Polaroid effect using CSSPolaroid-izing photos with CSS and one Image.20. CSS 杂志Create a Magazine Type layout Using CSS21. CSS Hoverbox Menucool CSS Menu22.CSS 标签切换Create a Tabbed content.23.CSS Magic with Fixed Background-attachmentshows a trick that reveals a magic24. CSS 信息提示如不慎侵犯了你的权益,请联系告知!11 /11 Show a message when hovering over the links.25. 纯 CSS 预加载效果Add a “loading” icon to your larger images(本资料素材和资料部分来自网络,仅供参考。
CSS3 必须要知道的10 个顶级命令来源:/index.asp1.边框圆角(Border Radiuas)这个是我们在平常很常用的吧,以前我在用div圆角的时候,特别特别的痛苦,不管是用CSS来画圆角,还是用图片来画圆角都不那么容易,但是现在好了,在CSS3中,直接只需要如下面饿代码,就能做出美轮美奂的圆角效果了~~~#box1 {border: 1px solid #699;/* for Mozilla Firefox */-moz-border-radius: 20px;/* for Safari & Google Chrome */-webkit-border-radius: 20px;}实例效果图:2.盒阴影(Box Shadow)就是让一个div能够产生阴影效果。
代码如下:#box1{border: 1px solid #699;-moz-box-shadow: 5px -5px 5px #b6ebf7;-webkit-box-shadow: 5px -5px 5px #b6ebf7;width: 100px;height: 100px;margin-left: 100px;margin-top: 100px;background-color:Gray;border-color:Yellow;}需要注意的是,它有4个参数:第一个参数:水平偏移的位置,它有正数或者负数。
如果是正数的话,那么表示边框的右(right)边产生阴影;否则如果是负数的话,那么它的左边(left)框产生阴影效果。
第二个参数:垂直偏移的位置。
它也有正数或者负数。
如果是正数的话,那么表示下(bottom)边框有阴影;否则如果是负数的话,那么它的上(top)边框有阴影。
第三个参数:阴影的大小第四个参数:颜色,这个很好理解。
实例效果图:注意上面,第二个参数,我用的是负数。
有box shadow ,还有一个属性是text-shadow,这个主要是运用在文字上面的。
css class选择器用法CSS(层叠样式表)是用于描述网页外观和布局的一种语言。
它可以与HTML文档结合使用,使网页的外观更加美观和易于阅读。
在CSS中,class选择器是一种非常重要的选择器,它可以帮助我们对网页中的元素进行样式设置,并且可以让我们更好地管理网页的外观。
一、CSS class选择器的基本语法CSS class选择器是通过class属性来选择元素的。
class属性是一个用于指定元素类别的属性,可以用来为元素设置样式。
在CSS 中,class选择器以“.”开头,后面跟着类名,类名可以是任何名称,但是必须是唯一的。
例如:```.my-class{color: red;}```上面的代码中,`.my-class`就是一个class选择器,它选择了一个类名为“my-class”的元素,并为它设置了颜色为红色的样式。
二、CSS class选择器的优点使用CSS class选择器的主要优点在于它可以让我们更好地管理网页的样式。
通过使用class选择器,我们可以将网页中的元素分组,然后为每个组指定相同的样式。
这样,我们就可以轻松地修改网页的样式,而不必对每个元素进行繁琐的修改。
例如,如果我们想要为网页中的所有标题设置相同的字体样式,可以使用以下代码:```.title{font-size: 24px;font-weight: bold;color: #333;}```上面的代码中,`.title`是一个class选择器,它选择了所有类名为“title”的元素,并为它们设置了字体大小、字体粗细和颜色等样式。
这样,我们就可以轻松地修改标题的样式,而不必对每个标题进行单独的修改。
三、CSS class选择器的高级用法除了基本的用法之外,CSS class选择器还有一些高级用法,可以让我们更好地管理网页的样式。
1. 多个class选择器一个元素可以有多个class属性,它们之间用空格分隔。
在CSS 中,我们可以使用多个class选择器来选择这个元素,并为它设置样式。
css高级教程CSS(层叠样式表)是一种用于描述网页中元素样式的标记语言。
它可以控制网页的布局、颜色、字体、大小以及其他视觉效果。
在这篇文章中,我们将探讨一些CSS的高级技巧和概念。
首先,让我们讨论CSS的选择器。
选择器用于选择网页中的特定元素,并将样式应用于这些元素。
这些选择器可以根据元素的标签、类名、ID等进行选择。
在高级教程中,我们将介绍一些更高级的选择器,如伪类选择器和伪元素选择器。
伪类选择器可以根据元素的状态或位置进行选择,例如:hover可以选择鼠标悬停在元素上的状态。
伪元素选择器则可以选择元素的特定部分,例如::before可以在元素之前插入内容。
接下来是CSS的布局技巧。
CSS提供了许多布局属性,可以用于控制元素在页面上的位置和大小。
在高级教程中,我们将介绍一些更复杂的布局技巧,比如弹性布局(flexbox)和网格布局(grid)。
弹性布局可以使元素在容器内自适应地伸缩和对齐。
网格布局则可以将页面划分为行和列,使元素能够以网格的形式布局。
此外,CSS还提供了很多用于创建动画和过渡效果的属性和特性。
在高级教程中,我们将介绍一些常用的动画和过渡技巧,如使用@keyframes关键帧实现复杂动画、使用transition过渡属性实现元素的平滑过渡等。
这些技巧可以让网页更加生动和吸引人。
最后,我们还将讨论一些CSS的优化技巧。
优化CSS可以提高网页的性能和加载速度。
一些优化技巧包括合并和压缩CSS文件、使用CSSsprites将多个图像合并成一个文件、将关键CSS内联到HTML文件中等。
这些技巧可以减少网络请求和减小文件大小,提升网页的响应速度。
总之,CSS提供了很多高级技巧和概念,可以让网页更加美观、富有创意和有趣。
通过学习和应用这些技巧,我们可以创建出独一无二的网页设计。
希望这篇高级教程对你有所帮助!。
css优先级!important用法
!important 是CSS中的一个特殊标记,用于给某个属性赋予最高优先级,即使其他规则的优先级高,被标记为!important的属性也会生效。
!important的使用方法如下:
1. 在属性值后面添加!important。
例如,将颜色设置为红色,并赋予!important优先级:
`css
color: red !important;
`
2. 加上!important的属性会覆盖其他的样式。
3. !important应该避免过度使用。
对于一般情况,不推荐使用!important。
它会破坏CSS的优先级规则,使样式难以维护和调整。
应该尽量使用优先级规则来指定样式的优先级,避免滥
用!important。
4. 若多条规则都带有!important,则由特定性来决定最终的应用。
当多条规则具有!important时,使用特定性规则来决定应用哪条规则。
特定性规则是CSS中用于决定优先级的一种规则,通过比较选择器的特定性来判断哪个规则更具体,从而决定应用哪个规则。
总结:使用!important时需要慎重,只在必要的情况下使用,并且避免多条规则同时使用!important。
css matrix高级用法摘要:1.CSS 矩阵的概述2.CSS 矩阵的语法3.CSS 矩阵的运算4.CSS 矩阵的实际应用5.总结正文:1.CSS 矩阵的概述CSS 矩阵,是CSS3 中的一个重要功能,它可以让你对网页元素进行更复杂的变换。
矩阵变换,可以看作是旋转、缩放、倾斜等多种变换的组合。
利用矩阵变换,可以轻松地实现网页元素的3D 效果,让网页更加生动。
2.CSS 矩阵的语法CSS 矩阵的语法,采用的是一个二维数组。
数组的每个元素,都是一个包含四个值的四元组。
这四个值,分别表示矩阵的行数、列数、以及矩阵中的元素。
例如,下面这个CSS 矩阵:```cssmatrix(1, 2, 3, 4, 5, 6, 7, 8);```它表示的是一个2x4 的矩阵,矩阵中的元素分别是1、2、3、4、5、6、7、8。
3.CSS 矩阵的运算CSS 矩阵的运算,主要是通过矩阵的乘法来实现的。
两个矩阵相乘,结果是一个新的矩阵,这个新矩阵中的每个元素,都是原矩阵对应行和列元素的乘积之和。
例如,有两个矩阵A 和B:```cssmatrix(1, 2, 3, 4, 5, 6, 7, 8);matrix(9, 8, 7, 6, 5, 4, 3, 2);```它们的乘积矩阵C:```cssmatrix(9, 16, 27, 32, 40, 36, 31, 20);```矩阵C 中的每个元素,都是矩阵A 和矩阵B 对应行和列元素的乘积之和。
4.CSS 矩阵的实际应用CSS 矩阵在实际应用中,主要用来实现网页元素的3D 变换。
例如,可以通过矩阵变换,让一个网页元素绕着另一个网页元素旋转。
或者,可以让一个网页元素在页面上做复杂的路径运动。
5.总结CSS 矩阵,是CSS3 中的一项重要功能,它可以让网页元素进行复杂的变换,从而实现网页的3D 效果。
css的deep用法CSS的deep用法是一种强大的工具,它允许开发者对元素进行更深入的样式控制。
在CSS中,使用deep关键字可以让你更精确地控制元素的样式,而不只是简单地应用样式到元素本身。
下面我们将详细介绍CSS的deep用法。
一、deep用法的含义在CSS中,deep是一种继承机制,用于控制元素的子元素如何继承父元素的样式。
通过使用关键字“deep”,开发者可以告诉浏览器不仅要应用样式给当前元素,还要将其应用到所有子元素中。
这对于控制复杂的布局和样式非常有用。
二、deep用法的优点使用deep可以带来许多优点。
首先,它可以简化样式的复杂性。
通过将样式应用到所有子元素,开发者可以避免为每个子元素单独编写样式,从而减少了代码量并提高了效率。
其次,它可以提高样式的可维护性。
当多个元素共享相同的样式时,使用deep可以使样式更易于管理和理解。
最后,它可以提高样式的准确性。
通过将样式应用到所有子元素,开发者可以确保样式不会在继承过程中丢失或改变。
三、deep用法的语法使用deep的关键字需要与属性值一起使用。
通常,它将应用于某些属性,如颜色、背景、边框等。
语法如下:```cssselector{property:value;/*属性名:值*/:not(selector){/*这些样式仅应用于非指定选择器的子元素*/}>element{/*这些样式仅应用于直接子元素*/}:root{/*这些样式应用于根元素*/}*{/*使用::slotted伪类可以限制样式只应用于父元素的插槽内部*/::slotted{/*deep模式下的样式*/}}}```其中,选择器表示要应用样式的元素类型。
属性名和值表示要应用的样式。
对于非指定选择器的子元素,可以使用::not伪类来应用特定的样式。
对于直接子元素,可以使用>符号来指定直接子元素。
对于根元素(<html>),可以使用:root伪类来应用样式。
CSS语法大全个人日记2009-03-08 00:11:27 阅读72 评论0 字号:大中小CSS语法大全CSS, 语法, 大全1.CSS文字属性:color : #999999; /*文字颜色*/font-family : 宋体,sans-serif; /*文字字体*/font-size : 9pt; /*文字大小*/font-style:itelic; /*文字斜体*/font-variant:small-caps; /*小字体*/letter-spacing : 1pt; /*字间距离*/line-height : 200%; /*设置行高*/font-weight:bold; /*文字粗体*/vertical-align:sub; /*下标字*/vertical-align:super; /*上标字*/text-decoration:line-through; /*加删除线*/text-decoration verline; /*加顶线*/text-decoration:underline; /*加下划线*/text-decoration:none; /*删除链接下划线*/text-transform : capitalize; /*首字大写*/text-transform : uppercase; /*英文大写*/text-transform : lowercase; /*英文小写*/text-align:right; /*文字右对齐*/text-align:left; /*文字左对齐*/text-align:center; /*文字居中对齐*/text-align:justify; /*文字分散对齐*/vertical-align属性vertical-align:top; /*垂直向上对齐*/vertical-align:bottom; /*垂直向下对齐*/vertical-align:middle; /*垂直居中对齐*/vertical-align:text-top; /*文字垂直向上对齐*/vertical-align:text-bottom; /*文字垂直向下对齐*/2.CSS符号属性:list-style-type:none; /*不编号*/list-style-type:decimal; /*阿拉伯数字*/list-style-type:lower-roman; /*小写罗马数字*/list-style-type:upper-roman; /*大写罗马数字*/list-style-type:lower-alpha; /*小写英文字母*/list-style-type:upper-alpha; /*大写英文字母*/list-style-type:disc; /*实心圆形符号*/list-style-type:circle; /*空心圆形符号*/list-style-type:square; /*实心方形符号*/list-style-image:url(/dot.gif); /*图片式符号*/list-style-position utside; /*凸排*/list-style-position:inside; /*缩进*/3.CSS背景样式:background-color:#F5E2EC; /*背景颜色*/background:transparent; /*透视背景*/background-image : url(/image/bg.gif); /*背景图片*/background-attachment : fixed; /*浮水印固定背景*/background-repeat : repeat; /*重复排列-网页默认*/background-repeat : no-repeat; /*不重复排列*/background-repeat : repeat-x; /*在x轴重复排列*/background-repeat : repeat-y; /*在y轴重复排列*/指定背景位置background-position : 90% 90%; /*背景图片x与y轴的位置*/ background-position : top; /*向上对齐*/background-position : buttom; /*向下对齐*/background-position : left; /*向左对齐*/background-position : right; /*向右对齐*/background-position : center; /*居中对齐*/4.CSS连接属性:a /*所有超链接*/a:link /*超链接文字格式*/a:visited /*浏览过的链接文字格式*/a:active /*按下链接的格式*/a:hover /*鼠标转到链接*/鼠标光标样式:链接手指 CURSOR: hand十字体 cursor:crosshair箭头朝下 cursor:s-resize十字箭头 cursor:move箭头朝右 cursor:move加一问号 cursor:help箭头朝左 cursor:w-resize箭头朝上 cursor:n-resize箭头朝右上 cursor:ne-resize箭头朝左上 cursor:nw-resize文字I型 cursor:text箭头斜右下 cursor:se-resize箭头斜左下 cursor:sw-resize漏斗 cursor:wait光标图案(IE6) p {cursor:url("光标文件名.cur"),text;}5.CSS框线一览表:border-top : 1px solid #6699cc; /*上框线*/border-bottom : 1px solid #6699cc; /*下框线*/border-left : 1px solid #6699cc; /*左框线*/border-right : 1px solid #6699cc; /*右框线*/以上是建议书写方式,但也可以使用常规的方式如下:border-top-color : #369 /*设置上框线top颜色*/ border-top-width :1px /*设置上框线top宽度*/border-top-style : solid/*设置上框线top样式*/其他框线样式solid /*实线框*/dotted /*虚线框*/double /*双线框*/groove /*立体内凸框*/ridge /*立体浮雕框*/inset /*凹框*/outset /*凸框*/6.CSS表单运用:文字方块按钮复选框选择钮多行文字方块下拉式菜单选项1选项27.CSS边界样式:margin-top:10px; /*上边界*/margin-right:10px; /*右边界值*/margin-bottom:10px; /*下边界值*/margin-left:10px; /*左边界值*/8.CSS边框空白padding-top:10px; /*上边框留空白*/padding-right:10px; /*右边框留空白*/padding-bottom:10px; /*下边框留空白*/padding-left:10px; /*左边框留空白基本语法一个样式(Style)的语法由三部分构成:Selector(中文叫选择器有点怪怪的,就用英文吧),属性(Property),属性值(Value)。
css的写法CSS(层叠样式表)是用来为网页添加样式和布局的一种标记语言。
以下是CSS的常见写法和语法规则:1. 选择器(Selector):选择器用来选择要应用样式的HTML 元素。
常见的选择器包括:- 元素选择器:选择指定的HTML元素,如p、h1、div等。
- 类选择器:选择具有相同类名的元素,以"."开头,例如.class-name。
- ID选择器:选择具有指定ID的元素,以"#"开头,例如#element-id。
- 属性选择器:选择具有指定属性的元素,例如[type="text"]。
- 伪类选择器:选择特定状态的元素,如:hover、:first-child 等。
2. 属性(Property)和值(Value):属性定义要应用的样式属性,值定义样式属性的具体值。
常见的属性和值包括:- color:定义文本颜色,可以使用具体颜色值或颜色名称。
- font-size:定义文本大小,可以使用像素值、百分比或em 单位。
- background-color:定义背景颜色,同样可以使用具体颜色值或颜色名称。
- width、height:定义元素的宽度和高度,可以使用像素值或百分比。
- margin、padding:定义元素的外边距和内边距,可以使用像素值或百分比。
3. CSS规则:CSS规则由选择器和一组属性-值对组成。
语法如下:```selector {property1: value1;property2: value2;/* 更多属性-值对*/}```4. CSS样式表链接:在HTML文档中,可以使用<link>元素将外部CSS文件链接到网页,例如:```<link rel="stylesheet" type="text/css" href="styles.css">```5. 内联样式和内部样式:除了使用外部CSS文件,还可以使用内联样式和内部样式来为网页添加样式。
CSS 语法 CSS 语法由三部分构成:选择器、属性和值: 语法由三部分构成:选择器、属性和值:selector {property: value}选择器 (selector) 通常是你希望定义的 HTML 元素或标签, 属性 (property) 是你希望 改变的属性,并且每个属性都有一个值。
属性和值被冒号分开,并由花括号包围,这样就组 成了一个完整的样式声明(declaration):body {color: blue}上面这行代码的作用是将 body 元素内的文字颜色定义为蓝色。
在上述例子中,body 是 选择器,而包括在花括号内的的部分是声明。
声明依次由两部分构成:属性和值,color 为 属性,blue 为值。
值的不同写法和单位 除了英文单词 red,我们还可以使用十六进制的颜色值 #ff0000:p { color: #ff0000; }为了节约字节,我们可以使用 CSS 的缩写形式:p { color: #f00; }我们还可以通过两种方法使用 RGB 值:p { color: rgb(255,0,0); } p { color: rgb(100%,0%,0%); }请注意,当使用 RGB 百分比时,即使当值为 0 时也要写百分比符号。
但是在其他的情况 下就不需要这么做了。
比如说,当尺寸为 0 像素时,0 之后不需要使用 px 单位,因为 0 就是 0,无论单位是什么。
记得写引号 提示: 提示:如果值为若干单词,则要给值加引号:p {font-family: "sans serif";} 多重声明: 多重声明: 提示: 提示:如果要定义不止一个声明,则需要用分号将每个声明分开。
下面的例子展示出如何定 义一个红色文字的居中段落。
最后一条规则是不需要加分号的, 因为分号在英语中是一个分 隔符号,不是结束符号。
然而,大多数有经验的设计师会在每条声明的末尾都加上分号,这 么的好处是,当你从现有的规则中增减声明时,会尽可能的减少出错的可能性。
就像这样:p {text-align:center; color:red;}你应该在每行只描述一个属性,这样可以增强样式定义的可读性,就像这样:p { text-align: center; color: black; font-family: arial; } 空格和大小写 大多数样式表包含不止一条规则, 而大多数规则包含不止一个声明。
多重声明和空格的使用 使得样式表更容易被编辑:body { color: #000;background: #fff; margin: 0; padding: 0; font-family: Georgia, Palatino, serif; }是否包含空格不会影响 CSS 在浏览器的工作效果,同样,与 XHTML 不同,CSS 对大 小写不敏感。
不过存在一个例外: 如果涉及到与 HTML 文档一起工作的话, class 和 id 名 称对大小写是敏感的。
CSS 高级语法•Previous Page • Next Page 选择器的分组 你可以对选择器进行分组,这样,被分组的选择器就可以分享相同的声明。
用逗号将需要分 组的选择器分开。
在下面的例子中,我们对所有的标题元素进行了分组。
所有的标题元素都 是绿色的。
h1,h2,h3,h4,h5,h6 { color: green; } 继承及其问题 根据 CSS,子元素从父元素继承属性。
但是它并不总是按此方式工作。
看看下面这条规则: body { font-family: Verdana, sans-serif; }根据上面这条规则,站点的 body 元素将使用 Verdana 字体(假如访问者的系统中存在 该字体的话)。
通过 CSS 继承,子元素将继承最高级元素(在本例中是 body)所拥有的属性(这些子元 素诸如 p, td, ul, ol, ul, li, dl, dt,和 dd)。
不需要另外的规则,所有 body 的子元素都 应该显示 Verdana 字体,子元素的子元素也一样。
并且在大部分的现代浏览器中,也确 实是这样的。
但是在那个浏览器大战的血腥年代里, 这种情况就未必会发生, 那时候对标准的支持并不是 企业的优先选择。
比方说,Netscape 4 就不支持继承,它不仅忽略继承,而且也忽略应 用于 body 元素的规则。
IE/Windows 直到 IE6 还存在相关的问题,在表格内的字体样 式会被忽略。
我们又该如何是好呢? 友善地对待 Netscape 4 幸运地是,你可以通过使用我们称为 "Be Kind to Netscape 4" 的冗余法则来处理旧式 浏览器无法理解继承的问题。
body { font-family: Verdana, sans-serif; }p, td, ul, ol, li, dl, dt, dd { font-family: Verdana, sans-serif; }4.0 浏览器无法理解继承,不过他们可以理解组选择器。
这么做虽然会浪费一些用户的带 宽,但是如果需要对 Netscape 4 用户进行支持,就不得不这么做。
继承是一个诅咒吗? 继承是一个诅咒吗? 如果你不希望 "Verdana, sans-serif" 字体被所有的子元素继承,又该怎么做呢?比方 说,你希望段落的字体是 Times。
没问题。
创建一个针对 p 的特殊规则,这样它就会摆 脱父元素的规则:body { font-family: Verdana, sans-serif; }td, ul, ol, ul, li, dl, dt, dd { font-family: Verdana, sans-serif; }p{ font-family: Times, "Times New Roman", serif; }CSS 派生选择器•Previous Page • Next Page 派生选择器 通过依据元素在其位置的上下文关系来定义样式,你可以使标记更加简洁。
通过依据元素在其位置的上下文关系来定义样式,你可以使标记更加简洁。
在 CSS1 中,通过这种方式来应用规则的选择器被称为上下文选择器 (contextual selectors),这是由于它们依赖于上下文关系来应用或者避免某项规则。
在 CSS2 中,它 们称为派生选择器,但是无论你如何称呼它们,它们的作用都是相同的。
派生选择器允许你根据文档的上下文关系来确定某个标签的样式。
通过合理地使用派生选择 器,我们可以使 HTML 代码变得更加整洁。
比方说,你希望列表中的 strong 元素变为斜体字,而不是通常的粗体字,可以这样定义 一个派生选择器:li strong { font-style: italic; font-weight: normal; }请注意标记为 <strong> 的蓝色代码的上下文关系:<p><strong>我是粗体字,不是斜体字,因为我不在列表当中,所以这个规则对我不起作 用</strong></p><ol> <li><strong>我是斜体字。
这是因为 strong 元素位于 li 元素内。
</strong></li> <li>我是正常的字体。
</li> </ol>在上面的例子中, 只有 li 元素中的 strong 元素的样式为斜体字, 无需为 strong 元素定 义特别的 class 或 id,代码更加简洁。
再看看下面的 CSS 规则: strong { color: red; }h2 { color: red; }h2 strong { color: blue; }下面是它施加影响的 HTML: <p>The strongly emphasized word in this paragraph is<strong>red</strong>.</p> <h2>This subhead is also red.</h2>CSS id 选择器• •Previous Page Next Page id 选择器 id 选择器可以为标有特定 id 的 HTML 元素指定特定的样式。
元素指定特定的样式。
id 选择器以 "#" 来定义。
来定义。
下面的两个 id 选择器, 第一个可以定义元素的颜色为红色, 第二个定义元素的颜色为绿色: #red {color:red;} #green {color:green;}下面的 HTML 代码中, 属性为 red 的 p 元素显示为红色, id 属性为 green 的 p id 而 元素显示为绿色。
<p id="red">这个段落是红色。
</p> <p id="green">这个段落是绿色。
</p> 注意: 注意:id 属性只能在每个 HTML 文档中出现一次。
想知道原因吗,请参阅 XHTML:网站 重构。
id 选择器和派生选择器 在现代布局中, 选择器常常用于建立派生选择器。
在现代布局中,id 选择器常常用于建立派生选择器。
#sidebar p { font-style: italic; text-align: right; margin-top: 0.5em; }上面的样式只会应用于出现在 id 是 sidebar 的元素内的段落。
这个元素很可能是 div 或 者是表格单元,尽管它也可能是一个表格或者其他块级元素。
它甚至可以是一个内联元素, 比如 <em></em> 或者 <span></span>,不过这样的用法是非法的,因为不可以在 内联元素 <span> 中嵌入 <p> (如果你忘记了原因,请参阅 XHTML:网站重构)。
一个选择器, 一个选择器,多种用法 的元素只能在文档中出现一次, 即使被标注为 sidebar 的元素只能在文档中出现一次,这个 id 选择器作为派生选择器 也可以被使用很多次: 也可以被使用很多次:#sidebar p {font-style: italic; text-align: right; margin-top: 0.5em; }#sidebar h2 { font-size: 1em; font-weight: normal; font-style: italic; margin: 0; line-height: 1.5; text-align: right; }在这里,与页面中的其他 p 元素明显不同的是,sidebar 内的 p 元素得到了特殊的处理, 同时,与页面中其他所有 h2 元素明显不同的是,sidebar 中的 h2 元素也得到了不同的 特殊处理。