英国各州留学费用:css中的选择器

来源:百度文库 编辑:九乡新闻网 时间:2024/04/29 23:50:25
作者:wcily123 和javascript相关 2010/10/11 

简介:这是css中的选择器的详细页面,介绍了和javascript,有关的知识、技巧、经验,和一些javascript源码等。

css 中的选择器
type selectors
universal selector
descendant selectors
child selectors
adjacent sibling selectors
attribute selectors
id selectors
class selectors
pseudo selectors
grouping

1.type selectors(类型选择符)
语法:
e { srules }
说明:
类型选择符。以文档语言对象(element)类型作为选择符。
示例:
td { font-size:14px; width:120px; }
a { text-decoration:none; }

2.universal selector(通配选择符)
语法:
* { srules }
说明:
通配选择符。选定文档目录树(dom)中的所有类型的单一对象。
假如通配选择符不是单一选择符中的唯一组成,“*”可以省略。
示例:
*[lang=fr] { font-size:14px; width:120px; }
*.div { text-decoration:none; }

3.descendant selectors(包含选择符)
语法:
e1 e2 { srules }
说明:
包含选择符。选择所有被 e1 包含的 e2 。即 e1.contains(e2)==true 。
示例:
table td { font-size:14px; } 
div.sub a { font-size:14px; }

4.child selectors(子对象选择符)
语法:
e1 > e2 { srules }
说明:
子对象选择符。选择所有作为 e1 子对象的 e2 。
示例:
body > p { font-size:14px; }
/* 所有作为body的子对象的p对象字体尺寸为14px */ 
div ul>li p { font-size:14px; }

5.adjacent sibling selectors(相邻选择符)
语法:
e1 + e2 { srules }
说明:
相邻选择符。选择紧贴在 e1 之后的所有 e2 。 e1 和 e2 在文档目录结构树(dom)中有共同的父对象。
示例:
div + p { font-size:14px; }
/* 所有紧贴在div对象之后的p对象的字体尺寸为14px */ 
div.fly + p { font-size:14px; }

6.attribute selectors(属性选择符)
语法:
e [ attr ] { srules }
e [ attr = value ] { srules }
e [ attr ~= value ] { srules }
e [ attr |= value ] { srules }
说明:
属性选择符。
选择具有 attr 属性的 e
选择具有 attr 属性且属性值等于 value 的 e
选择具有 attr 属性且属性值为一用空格分隔的字词列表,其中一个等于 value 的 e 。这里的 value 不能包含空格
选择具有 attr 属性且属性值为一用连字符分隔的字词列表,由 value 开始的 e
示例:
h[title] { color: blue; }
/* 所有具有title属性的h对象 */ 
span[class=demo] { color: red; } 
div[speed="fast"][dorun="no"] { color: red; } 
a[rel~="copyright"] { color:black; }

7.id selectors(id选择符)
语法:
#id { srules }
说明:
id选择符。以文档目录树(dom)中作为对象的唯一标识符的 id 作为选择符。
示例:
#note { font-size:14px; width:120px;}

8.class selectors(类选择符)
语法:
e.classname { srules }
说明:
类选择符。在html中可以使用此种选择符。其效果等同于e [ class ~= classname ] 。请参阅属性选择符( attribute selectors )。
在ie5+,可以为对象的 class 属性(特性)指定多于一个值( classname ),其方法是指定用空格隔开的一组样式表的类名。例如:

示例:
div.note { font-size:14px; }
/* 所有class属性值等于(包含)"note"的div对象字体尺寸为14px */

.dream { font-size:14px; }
/* 所有class属性值等于(包含)"note"的对象字体尺寸为14px */

9.pseudo selectors(伪类及伪对象选择符)
语法:
e : pseudo-classes { srules }
e : pseudo-elements { srules }
说明:
伪类及伪对象选择符。
伪类选择符。附录1。
伪对象选择符。附录2。
示例:
div:first-letter { font-size:14px; }
a.fly :hover { font-size:14px; color:red; }

10.grouping(选择符分组)
语法:
e1 , e2 , e3 { srules }
说明:
选择符分组。将同样的定义应用于多个选择符,可以将选择符以逗号分隔的方式并为组。
示例:
.td1,div a,body { font-size:14px; }
td,div,a { font-size:14px; }

附录1(伪类选择符)
:link
语法:
selector : link { srules }
说明:
设置 a 对象在未被访问前的样式。
默认值由浏览器决定。
对于无 href 属性(特性)的 a 对象,此伪类不发生作用。
请参阅 body 对象的 link 属性(特性)和 document 对象的 linkcolor 特性。
ie3将 :link 伪类的样式表属性作用于 visited 伪类。
示例:
a:link { font-size: 14pt; text-decoration: underline; color: blue; }

:hover
语法:
selector : hover { srules }
说明:
设置对象在其鼠标悬停时的样式。
在css1中此伪类仅可用于 a 对象。对于无 href 属性(特性)的 a 对象,此伪类不发生作用。
在css2中此伪类可以应用于任何对象。
示例:
a:hover { font-size: 14pt; text-decoration: underline; color: blue; }
a:hover span{ color:red; }

:active
语法:
selector : active { srules }
说明:
设置对象在被用户激活(在鼠标点击与释放之间发生的事件)时的样式。
在css1中此伪类仅可用于 a 对象。对于无 href 属性(特性)的 a 对象,此伪类不发生作用。
在css2中此伪类可以应用于任何对象。
并且 :active 可以和 :link 以及 :visited 状态同时发生。

:visited
语法:
selector : visited { srules }
说明:
设置 a 对象在其链接地址已被访问过时的样式。
ie3将 :link 伪类的样式表属性作用于 :visited 伪类。
默认值由浏览器决定。定义网页过期时间或用户清空历史记录将影响此伪类的作用。
对于无 href 属性(特性)的 a 对象,此伪类不发生作用。
请参阅 body 对象的 vlink 属性(特性)和 document 对象的 vlinkcolor 特性。
示例:
a:visited { font-size: 14pt; text-decoration: underline; color: blue; }

:focus
语法:
selector : focus { srules }
说明:
设置对象在成为输入焦点(该对象的 onfocus 事件发生)时的样式。
示例:
a:focus { font-size: 14pt; text-decoration: underline; color: blue; }
a:focus img { border: thin solid green }

:first-child
语法:
selector : first-child { srules }
说明:
设置 e 的第一个子对象的样式。
示例:
p a:first-child { color: green }
table td:first-child { width:200px; }

:first
语法:
selector : first { srules }
说明:
设置页面容器第一页使用的样式。仅用于 @page 规则。
示例:
@page :first { margin: 4cm }

:left
语法:
selector : left { srules }
说明:
设置页面容器位于装订线左边的所有页面使用的样式。仅用于 @page 规则。
示例:
@page :left { margin: 4cm }

:right
语法:
selector : right { srules }
说明:
设置页面容器位于装订线右边的所有页面使用的样式。仅用于 @page 规则。
示例:
@page :right { margin: 4cm }

:lang
语法:
selector : lang { srules }
说明:
设置对象使用特殊语言的内容的样式。
示例:
blockquote:lang(fr) { quotes: '?' ' ?' }
/* 使用法语显示由quotes属性指定的法语的嵌套标记 */


附录2(伪对象选择符)
:first-letter
语法:
selector : first-letter { srules }
说明:
设置对象内的第一个字符的样式。

此伪对象仅作用于块对象。内联要素要使用该属性,必须先设定对象的 height 或 width 属性,或者设定 position 属性为 absolute ,或者设定 display 属性为 block 。

在此伪对象中配合使用 font-size 属性和 float 属性可以制作首字下沉效果。
示例:
p a:first-letter { color: green }
div:first-letter { color:red;font-size:16px;float:left; }

:first-line
语法:
selector : first-line { srules }
说明:
设置对象内的第一行的样式。
此伪对象仅作用于块对象。内联要素要使用该属性,必须先设定对象的 height 或 width 属性,或者设定 position 属性为 absolute ,或者设定 display 属性为 block 。
如果未强制指定对象的 width 属性, 首行的内容长度可能不是固定的。
示例:
p a:first-line { color: green }
div:first-line { color:red;font-size:16px; }

:before
语法:
selector : before { srules }
说明:
用来和 content 属性一起使用,设置在对象前(依据对象树的逻辑结构)发生的内容。
示例:
em:before { content: url("ding.wav"); }

:after
语法:
selector : after { srules }
说明:
用来和 content 属性一起使用,设置在对象后(依据对象树的逻辑结构)发生的内容。
示例:
table:after { content: end of table }