预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

派生选择器通过依据元素在其位置的上下文关系来定义样式,你可以使标记更加简洁。在CSS1中,通过这种方式来应用规则的选择器被称为上下文选择器(contextualselectors),这是由于它们依赖于上下文关系来应用或者避免某项规则。在CSS2中,它们称为派生选择器,但是无论你如何称呼它们,它们的作用都是相同的。派生选择器允许你根据文档的上下文关系来确定某个标签的样式。通过合理地使用派生选择器,我们可以使HTML代码变得更加整洁。比方说,你希望列表中的strong元素变为斜体字,而不是通常的粗体字,可以这样定义一个派生选择器:listrong{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;}h2strong{color:blue;}下面是它施加影响的HTML:<p>Thestronglyemphasizedwordinthisparagraphis<strong>red</strong>.</p><h2>Thissubheadisalsored.</h2><h2>Thestronglyemphasizedwordinthissubheadis<strong>blue</strong>.</h2>id选择器id选择器可以为标有特定id的HTML元素指定特定的样式。id选择器以"#"来定义。下面的两个id选择器,第一个可以定义元素的颜色为红色,第二个定义元素的颜色为绿色:#red{color:red;}#green{color:green;}下面的HTML代码中,id属性为red的p元素显示为红色,而id属性为green的p元素显示为绿色。<pid="red">这个段落是红色。</p><pid="green">这个段落是绿色。</p>注意:id属性只能在每个HTML文档中出现一次。想知道原因吗,请参阅HYPERLINK"http://www.w3school.com.cn/xhtml/xhtml_structural_01.asp"XHTML:网站重构。id选择器和派生选择器在现代布局中,id选择器常常用于建立派生选择器。#sidebarp{font-style:italic;text-align:right;margin-top:0.5em;}上面的样式只会应用于出现在id是sidebar的元素内的段落。这个元素很可能是div或者是表格单元,尽管它也可能是一个表格或者其他块级元素。它甚至可以是一个内联元素,比如<em></em>或者<span></span>,不过这样的用法是非法的,因为不可以在内联元素<span>中嵌入<p>(如果你忘记了原因,请参阅HYPERLINK"http://www.w3school.com.cn/xhtml/xhtml_structural_01.asp"XHTML:网站重构)。一个选择器,多种用法即使被标注为sidebar的元素只能在文档中出现一次,这个id选择器作为派生选择器也可以被使用很多次:#sidebarp{font-style:italic;text-align:right;margin-top:0.5em;}#sidebarh2{font-size:1em;font-weight:normal;font-style:italic;margin:0;line-height:1.5;text-align:right;}在这里,与页面中的其他p元素明显不同的是,sidebar内的p元素得到了特殊的处理,同时,与页面中其他所有h2元素明显不同的是,sidebar中的h2元素也得到了不同的特殊处理。单独的选择器id选择器即使不被用来创建派生选择器,它也可以独立发挥作用:#sidebar{border:1pxdotted#000;padding:10px;}根据这条规则,id为sidebar的元素将拥有一个像素宽的黑色点状边框,同时其周围会有10个像素宽的内边距(padding,内部空白)。老版本的Windows/IE浏览器可能会忽略这条规则,除非你特别地定义这个选择器所属的元素:div#sidebar{border:1pxdot