热烈祝贺台州朗动科技的站长论坛隆重上线!(2012-05-28)    热烈庆祝伟大的祖国60周年生日 点击进来我们一起为她祝福吧(2009-09-26)    站长论坛禁止发布广告,一经发现立即删除。谢谢各位合作!.(2009-08-08)    热烈祝贺台州网址导航全面升级,全新版本上线!希望各位一如既往地支持台州网址导航的发展.(2009-03-28)    台州站长论坛恭祝各位新年快乐,牛年行大运!(2009-01-24)    台州Link正式更名为台州网址导航,专业做以台州网址为主的网址导航!(2008-05-23)    热烈祝贺台州Link资讯改名为中国站长资讯!希望在以后日子里得到大家的大力支持和帮助!(2008-04-10)    热烈祝贺台州Link论坛改名为台州站长论坛!希望大家继续支持和鼓励!(2008-04-10)    台州站长论坛原[社会琐碎]版块更名为[生活百科]版块!(2007-09-05)    特此通知:新台州站长论坛的数据信息全部升级成功!">特此通知:新台州站长论坛的数据信息全部升级成功!(2007-09-01)    台州站长论坛对未通过验证的会员进行合理的清除,请您谅解(2007-08-30)    台州网址导航|上网导航诚邀世界各地的网站友情链接和友谊联盟,共同引领网站导航、前进!(2007-08-30)    禁止发广告之类的帖,已发现立即删除!(2007-08-30)    希望各位上传与下载有用资源和最新信息(2007-08-30)    热烈祝贺台州站长论坛全面升级成功,全新上线!(2007-08-30)    
便民网址导航,轻松网上冲浪。
台州维博网络专业开发网站门户平台系统
您当前的位置: 首页 » DIV+CSS编程 » 简洁版本的CSS 3 选择器解释

简洁版本的CSS 3 选择器解释

论坛链接
  • 简洁版本的CSS 3 选择器解释
  • 发布时间:2008-07-02 19:09:53    浏览数:7086    发布者:tznktg    设置字体【   
在CSS 3里,假设你做了一个包含以下标签结构的HTML文件:

<div id="nav-primary"></div>
<div id="content-primary"></div>
<div id="content-secondary"></div>
<div id="tertiary-content"></div>
<div id="nav-secondary"></div>


然后呢,在CSS文件里

div[id^="nav"] { background:#ff0; }


注意是“^”
CSS在这种情况下将控制[u]div#nav-primary 和div#nav-secondary[/u]。请大家注意,这两个标签前面都有 nav ,到底是以"-"做为分隔,还是把ID进行从前至后匹配就不得而知了 [sweat]

div[id$="primary"] { background:#ff0; }


注意是“$”
CSS在这种情况下将控制[u]div#nav-primary 和div#content-primary[/u]。请大家注意,这两个标签后面都有 primar ,到底是以"-"做为分隔,还是把ID进行从后至前匹配也就不得而知了 [sweat]

div[id*="content"] { background:#ff0; }


注意是“*”
CSS在这种情况下将控制[u]div#content-primary div#content-secondary 和div#tertiary-content[/u]。请大家注意,这些标签都含有 content ,到底是以"-"做为分隔,还是把ID自动扫描后匹配就更不得而知了 [sweat]

好象作者说这几个标签现在除了IE不支持,其它最新版的各种浏览器都支持了,大家可以一试,我就不试了~ [lol]

div#content-primary:target { outline:1px solid #300; }


注意那个“:target”
CSS在这种情况下将控制 http: //www.example.com/index.html#content-primary 这个锚链接(锚链接差不多可以理解就是一个网页内的链接,比较在有些网页看到的回到顶部)

作者说现在Mozilla 和 Safari浏览器支持这个

input[type="text"]:enabled { background:#ffc; }
input[type="text"]:disabled { background:#ddd; }


注意那个“[type="text"]:enabled”
这个就是控制表单的CSS了,“[u][type="text"][/u]”好象是表单里type是text的吧。。。那[u]type="password"[/u]会是啥呢?

input:checked { border:1px solid #090; }


注意那个“:checked”
这个就是控制表单的“选择”的CSS了。。。

作者说现在Opera和Mozilla浏览器支持这些

:root { background:#ff0; }
html { background:#ff0; }


大家注意那个“:root”
这个“:root”是比 html 还要高一级的标签,这个大家可以看 一叶千鸟 写的 正确认识html与body 他在文中发现了原来html 外面还有个框框,嘿嘿~

作者说现在Mozilla 和 Safari浏览器支持这个

接下来的 :nth-child() 就比较有意思了,呵呵~在括号里可以放数字和默认的字母~

p:nth-child(3) { color:#f00; }


这个意思好象是说以第一个出现的 P 为基础,只要是“3”的倍数的全部 P 都会被控制~

p:nth-child(odd) { color:#f00; }


这个意思好象是说以第一个出现的 P 为基础,然后 奇数 目的全部 P 都会被控制~

p:nth-child(even) { color:#f00; }


这个意思好象是说以第一个出现的 P 为基础,然后 偶数 目的全部 P 都会被控制~

p:nth-child(3n+0) { color:#f00; }
p:nth-child(3n) { color:#f00; }


这两个标签是等效的,因为第一个后面的0等没没起作用,他的意思就是3倍于第一个出现的 P 的 P 都会被控制~(好绕口啊,HOHO~ [rolleyes] )也就是说这个 “n” 会从0.1.2.3.4.5.6....一直取值下去~算出来多少就是多少的 P 都会被控制。。。

tr:nth-child(2n+11) { background:#ff0; }


这个如果大家理解上面的了,这个也不难理解,不过他控制的标签变成了 “tr” 这就是说表格会变得更加变化多端,感觉大家一定要小学算数得好,学得不好得快快回家再学一学小学算数去。。。(不过,这样的标签是不是加重了电脑处理的效率呢? [confused] 希望我的但心是多余的。。。)

p:last-child { background:#ff0; }


在 p 之前的一个 p 被控制 (NND,p来p去的,打pp [sweat] )

:not(p) { border:1px solid #ccc; }


这个p不被控制,自已用自带的样式的意思吧,应该是和前面的那些一起用才是。。。

p ~ ul { background:#ff0; }


ul 优先于 p 显示,这是咋个优先法,不清楚。。。

基本上我看得懂的就这些了,大家可以到下面两个网址接着学习,我有什么说错了,记得告诉我啊
www.456bereastreet.com/archive/200601/css_3_selectors_explained/
www.w3.org/TR/2005/WD-css3-selectors-20051215/
娱乐休闲专区A 影视预告B 音乐咖啡C 英语阶梯D 生活百科
网页编程专区E AMPZF HTMLG CSSH JSI ASPJ PHPK JSPL MySQLM AJAX
Linux技术区 N 系统管理O 服务器架设P 网络/硬件Q 编程序开发R 内核/嵌入
管理中心专区S 发布网址T 版主议事U 事务处理