日期:2014-01-16 浏览次数:21171 次
虽然我们曾经使用CSS2.1选择器排除掉了所有的class和id,显然还会有很多更复杂的情况需求CSS3的高级选择器来处理。让我们通过完成一下的实例来了解一下如何在不使用无用的class和id属性的情况下利用CSS3定位页面元素。
使用一个独一的日志(post)ID定位所有日志
wordpress提供应我们一种包含了ID的每篇日志的源代码输出。这种信息通常用于导航和/或了解材料的意图,不过CSS3可以利用这些独一的ID来定义这些日志的款式。当然,你还可以像往常那样为每篇日志添加class=”post”这样的属性,但这就与我们练习的意图相冲突了(再加上它没有一点乐趣所在)。使用”子字符串婚配选择器”,我们就可以像下面这样定位所有日志和它们的不同元素了。
1 2 3 |
article[id*=post-] {} /* 定位所有日志 */ article[id*=post-] header h1 {} /* 定位所有日志中的h1标签 */ article[id*=post-] section p {} /* 定位所有日志中的p标签 */ |
我没仍然可以使用同样的方式定位评论的元素和它们的子元素。
1 2 3 |
article[id*=comment-] {} /* 定位所有评论 */ article[id*=comment-] header h1 {} /* 定位所有评论中的h1标签 */ article[id*=comment-] section p {} /* 定位所有评论中的p标签 */ |
定位一些指定的区域(section)或文章(article)
有很多博客的日志量和评论量都相当大,HTML 5 会将它们由<section>或<article>元素组成。为了定位哪些指定的<section>或<article>元素,我们就要转而使用强大的“:nth-child”选择器了:
1 2 3 4 5 |
section:nth-child(1) {} /* 选择第一个 <section> */
article
免责声明: 本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
|