当前位置:首页 > Jquery从入门到精通:二、选择器 2、选择器(1)CSS选择器

Jquery从入门到精通:二、选择器 2、选择器(1)CSS选择器

点击次数:1556  更新日期:2011-01-05
\n

1.准备知识:CSS选择器:(参考文档:CSS2.0帮助文档)


\n

代码:


\n

<body>
<div>
<p id=”p1″>足不出户订窗帘:<a href=”http://www.gooddo.com/” target=”_blank”>www.gooddo.com</a></p>
<p>当客网:<a href=”http://www.downke.cn/” target=”_blank”>www.downke.cn</a></p>
<p>网络图书馆:热点图书<a href=”http://www.hotbook.cn/” target=”_blank”>www.hotbook.cn</a></p>
<div>足不出户订窗帘:<a href=”http://www.gooddo.com/” target=”_blank”>www.gooddo.com</a></div>
<ul>
<li><p>www.downke.cn</p></li>
<li>www.gooddo.com</li>
<li>http://www.hotbook.cn</li>
</ul>
</div>
</body>


\n

Selectors
选择符 CSS Version
版本 Compatibility
兼容性 Syntax Samples
语法 Description
简介
类型选择符(Type Selectors) CSS1 IE4+ , NS4+ E1 以文档语言对象类型作为选择符
通配选择符(Universal Selector) CSS2 NONE * 选定文档目录树(DOM)中的所有类型的单一对象
包含选择符(Descendant Selectors) CSS1 IE4+ , NS4+ E1 E2 选择所有被E1包含的E2。即E1.contains(E2)==true
子对象选择符(Child Selectors) CSS2 NONE E1 > E2 选择所有作为E1子对象的E2
相邻选择符(Adjacent Sibling Selectors) CSS2 NONE E1 + E2 选择紧贴在对象E1之后的所有E2对象
属性选择符(Attribute Selectors) CSS2 NONE E1[attr] 选择具有attr属性的E1
属性选择符(Attribute Selectors) CSS2 NONE E1[attr=value] 选择具有attr属性且属性值等于value的E1
属性选择符(Attribute Selectors) CSS2 NONE E1[attr~=value] 选择具有attr属性且属性值为一用空格分隔的字词列表,其中一个等于value的E1
属性选择符(Attribute Selectors) CSS2 NONE E1[attr|=value] 选择具有attr属性且属性值为一用连字符分隔的字词列表,由value开始的E1
ID选择符(ID Selectors) CSS1 IE4+ , NS4+ #sID 以文档目录树(DOM)中作为对象的唯一标识符的ID作为选择
类选择符(Class Selectors) CSS1 IE4+ , NS4+ E1.className 在HTML中可以使用此种选择符。其效果等同于E1[class~=className]
选择符分组(Grouping) CSS1 IE4+ , NS4+ E1,E2,E3 将同样的定义应用于多个选择符,可以将选择符以逗号分隔的方式并为组


\n


\n


(1)* :通用选择器--表示匹配所有的元素。


\n

*{ color:red;}表示页面上所有的文字颜色都为红色:


\n

(2)div :类型选择器--表示匹配所有的div元素(包括其内部的子元素)


\n

div{ color:red;}:表示在上面的代码中的div及其内部的子元素的文本都为红色。


\n

p{ color:red;}:表示上面代码中的<p>标签及其内部的子元素文本都为红色。而<div>足不出户订窗帘:<a href=”http://www.gooddo.com/” target=”_blank”>www.gooddo.com</a></div>内的文本却不会改变。


\n

(3)div>p:子选择器--表示div的子类中的所有p标签。


\n

如:div>p{ color:#FF0000;},表示上面代码中的div的子类中的所有p标签,但是不包括:<li><p>www.downke.cn</p></li>,因为他是属于div孙子辈的标签。


\n

(4)div p:后代选择器--表示选取div中所有的p标签。


\n

如:div p{ color:#FF0000;},可以实现div中的所有p标签中文字都变成红色,包括:<li><p>www.downke.cn</p></li>,


\n

(5)#p1:ID选择器--选择id为p1的所有元素。


\n

注:理论上,一个页面可以存在多个相同的ID,这对于一般的页面没有什么影响,但是对于脚本编程来说,是会报错的。所以如果想让一些元素具有相同的style的话,可以用class进行定义。也就是我们下面要提到的类选择器。


\n

(6).p1:类选择器--选择类名为p1的所有元素


\n

(7)属性选择符:


\n

1. E1[attr]
2. E1[attr=value]
3. E1[attr~=value]
4. E1[attr|=value]

说明:

1. 选择具有attr属性的E1
2. 选择具有attr属性且属性值等于value的E1
3. 选择具有attr属性且属性值为一用空格分隔的字词列表,其中一个等于value的E1。这里的value不能包含空格
4. 选择具有attr属性且属性值为一用连字符分隔的字词列表,由value开始的E1
目前IE5.5+尚不支持此种选择符。

示例:

h[title] { color: blue; }
/* 所有具有title属性的h对象 */

span[class=demo] { color: red; }

div[speed="fast"][dorun="no"] { color: red; }

a[rel~="copyright"] { color:black; }


\n

此外,CSS还有伪类和伪对象,这里不再做详细的解释,大家可以下载一份CSS2.0中文手册看看。


\n

CSS Pseudo-Classes Reference 伪类


\n


Pseudo-Classes
伪类 CSS Version
版本 Compatibility
兼容性 Description
简介
:link CSS1 IE4+ , NS4+ 设置a对象在未被访问前的样式表属性
:hover CSS1/CSS2 IE4+ , NS4+ 设置对象在其鼠标悬停时的样式表属性
:active CSS1/CSS2 IE4+ 设置对象在被用户激活(在鼠标点击与释放之间发生的事件)时的样式表属性
:visited CSS1 IE4+ , NS4+ 设置a对象在其链接地址已被访问过时的样式表属性
:focus CSS2 NONE 设置对象在成为输入焦点(该对象的onfocus事件发生)时的样式表属性
:first-child CSS2 NONE 设置对象(Selector1)的第一个子对象(Selector2)的样式表属性
:first CSS2 IE4+ 设置页面容器第一页使用的样式表属性。仅用于@page规则
:left CSS2 IE4+ 设置页面容器位于装订线左边的所有页面使用的样式表属性。仅用于@page规则
:right CSS2 IE4+ 设置页面容器位于装订线右边的所有页面使用的样式表属性。仅用于@page规则
:lang CSS2 NONE 设置对象使用特殊语言的内容样式表属性


\n


CSS Pseudo-Elements Reference 伪对象


\n


Pseudo-Elements
伪对象 CSS Version
版本 Compatibility
兼容性 Description
简介
:first-letter CSS2 IE5.5+ 设置对象内的第一个字符的样式表属性
:first-line CSS2 IE5.5+ 设置对象内的第一行的样式表属性
:before CSS2 NONE 用来和content属性一起使用,设置在对象前(依据对象树的逻辑结构)发生的内容
:after CSS2 NONE 用来和content属性一起使用,设置在对象后(依据对象树的逻辑结构)发生的内容

\n


我们有了以上的CSS选择符、伪类、伪对象的知识积累,我们就可以随心所欲的使用强大的Jquery来选择我们所要的对象了。


\n

例如:


\n

(‘div’):表示取得所有的div元素,并返回一个jquery对象。


\n

我做了一个简单的选择器效果展示,应该下班了,没有时间了,做的比较糙,也不全,大家凑合看吧。


\n

selectors


\n

来源:http://www.cnblogs.com/andylaufzf

\n