点击这里给我发消息 点击这里给我发消息

HTML 5与CSS 3权威指南:选择器概述

添加时间:2013-12-6
    相关阅读: 开发 页面 程序 HTML CSS 网站
 

第19章 选择器

19.1   选择器概述

19.2   属性选择器

19.3   结构性伪类选择器

19.4   UI元素状态伪类选择器

19.5   通用兄弟元素选择器

本章针对CSS 3中使用的各种选择器进行详细介绍,通过选择器的使用,你不再需要在编辑样式时使用多余的以及没有任何语义的class属性,而是直接将样式与元素绑定起来,从而节省大量在网站或Web应用程序已经完成之后修改样式时所需花费的时间。

学习内容:

掌握CSS 3中使用的选择器的基本概念。知道什么是选择器以及为什么需要使用选择器,使用选择器有什么好处。

  掌握CSS 3中的各种属性选择器的概念以及使用方法,其中包括:

  [att=val] 选择器

  [att*=val] 选择器

  [att^=val] 选择器

  [att$=val] 选择器

掌握CSS3中的各种结构性伪类选择器的概念以及使用方法,其中包括:

  root选择器

  not选择器

  empty选择器

  target选择器

  first-child选择器

  last-child选择器

  nth-child选择器

  nth-last-child选择器

  nth-of-type选择器

  nth-last-of-type选择器

  only-child选择器

掌握CSS3中的各种UI元素状态伪类选择器的概念以及使用方法,其中包括:

  E:hover选择器

  E:active选择器

  E:focus选择器

  E:enabled选择器

  E:disabled选择器

  E:read-only选择器

  E:read-write选择器

  E:checked选择器

  E:default选择器

  E: indeterminate选择器

  E::selection选择器

  E:invalid选择器

  E:valid选择器

  E:required选择器

  E:optional选择器

  E:in-range选择器

  E:out-of-range选择器

掌握CSS3中的通用兄弟元素选择器的概念以及使用方法。

19.1   选择器概述

选择器是CSS 3中一个重要的内容。使用它可以大幅度提高开发人员书写或修改样式表时的工作效率。

在样式表中,一般会书写大量的代码,在大型网站中,样式表中的代码可能会达到几千行。麻烦的是,当整个网站或整个Web应用程序全部书写好之后,需要针对样式表进行修改时,在洋洋洒洒一大篇CSS代码之中,并没有说明什么样式服务于什么元素,只是使用了class属性,然后在页面中指定了元素的class属性。但是,使用元素的class属性有两个缺点:第一,class属性本身没有语义,它纯粹用来为CSS样式服务,属于多余属性;第二,使用class属性的话,并没有把样式与元素绑定起来,针对同一个class属性,文本框也可以使用,下拉框也可以使用,甚至按钮也可以使用,这样其实是非常混乱的,修改样式时也很不方便。

所以,在CSS 3中,提倡使用选择器来将样式与元素直接绑定起来,这样的话,在样式表中什么样式与什么元素相匹配变得一目了然,修改起来也很方便。不仅如此,通过选择器,我们还可以实现各种复杂的指定,同时也能大量减少样式表的代码书写量,最终书写出来的样式表也变得简洁明了。

具体来说,使用选择器进行样式指定时,采用类似E[foo$="val"]这种正则表达式的形式。在样式中,声明该样式应用于什么元素,该元素的某个属性的属性值必须是什么。例如,我们可以指定将页面中id为"div_Big"的div元素的背景色设定为红色,代码如下所示。

  div[id="div_Big"] {background: red;}

这样,符合这个条件(id为"div_Big")的div元素的背景色被设为红色,不符合这个条件的div元素不使用这个样式。

另外,我们还可以在指定样式时使用"^"通配符(开头字符匹配)、"?"通配符(结尾字符匹配)与"*"通配符(包含字符匹配)。如指定id末尾字母为"t"的div元素的背景色为蓝色,代码如下所示。

  div[id$="t"] {background: red;}

使用通配符能大大提高样式表的书写效率。

 

咨询热线:020-85648757 85648755 85648616 0755-27912581 客服:020-85648756 0755-27912581 业务传真:020-32579052
广州市网景网络科技有限公司 Copyright◎2003-2008 Veelink.com. All Rights Reserved.
广州商务地址:广东省广州市黄埔大道中203号(海景园区)海景花园C栋501室
= 深圳商务地址:深圳市宝源路华丰宝源大厦606
研发中心:广东广州市天河软件园海景园区 粤ICP备05103322号 工商注册