详解CSS3中的属性选择符(2)

作者:dudo 来源:dudo says 时间:2008-04-24 14:30:00 

子串匹配的属性选择符

这一组的选择符都新加的,他允许开发者对属性中的子字符串来进行匹配。

假设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>

通过使用子串匹配的属性选择符就可以找到文档中这些结构性的特定组合。

下面的规则将为id以“nav”开头的div元素设定背景颜色:

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

 

上例中选择符会匹配div#nav-primary和div#nav-secondary。

要找到id以primary结尾的div元素,可以使用下面的规则:

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

这时选择符将匹配div#nav-primary和div#content-primary。

下面的规则将会匹配到id中含有content子字符串的的div中:

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

受影响的元素有:div#content-primary、div#content-secondary和div#tertiary-content。

子串匹配的属性选择符已经在最新版本的Mozilla、Firefox、Flock、Camino、Safari、OmniWeb以及Opera中可以使用,但是如果IE中还不支持的话,我们最好还是先不要使用他们(作者在写这篇文章时IE还在开发中,如今IE7、IE8都支持这些选择符,dudo注)。

目标伪类

含有识别标识的url(一个#后面紧跟锚点名称或者元素的id)指向的是文档中的特定元素。链向其他目标元素的这些元素就可以使用:target伪类来修饰它。如果当前的URL中没有任何的片断识别标识,:target伪类将不会匹配任何元素。

还是以上面提到的代码结构为例,如果URL中包含content-primary标识时,现在的规则将会在他外围增加一个边框:

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

URL是类似这样的形式的:
http://www.example.com/index.html#content-primary。
基于Mozilla和Safari的浏览器已经支持:target伪类。

UI元素状态伪类

:ENABLED伪类和:DISABLED伪类
在浏览器允许改变表单控件外观的前提下,:enabled伪类和:disable伪类允许开发者指定用户界面中可用和不可用元素(表单元素)的显示样式。下面的规则将会根据单行输入框是否可用设定不同的背景颜色:

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

标签:选择符,伪类,css3,浏览器
0
投稿

猜你喜欢

  • sql不常用函数总结以及事务,增加,删除触发器

    2012-07-11 16:03:42
  • 不错的广告定位效果代码

    2009-06-05 18:51:00
  • web标准:CSS clear的属性及使用方法

    2008-10-27 13:31:00
  • 细化解析:轻松掌握怎样测试 MySQL安装

    2009-01-14 11:54:00
  • 磁盘缓存专题之一 缓存命中和缓存未命中&缓存与缓冲间的差异

    2012-10-07 11:02:46
  • Facebook是如何设计的[译]

    2009-09-17 13:10:00
  • 给验证码增加干扰的杂点

    2008-05-16 11:34:00
  • 快速掌握ASP连接11种数据库的常用语法

    2008-11-28 15:32:00
  • asp如何用WSH获取机器的IP配置信息?

    2010-06-13 14:39:00
  • ASP:Cookie使用指南

    2007-09-28 12:48:00
  • SQL 字母数字混合型字段 按里面的数字排序

    2010-04-23 18:18:00
  • 设计规范有谱么?

    2008-06-06 12:28:00
  • 解决 myJSFrame 框架中 Ajax 方法一处明显的内存泄露

    2008-03-09 19:14:00
  • Dreamweaver给你的网页盖个章

    2008-02-03 11:35:00
  • ajax返回中文乱码问题解决

    2009-04-13 16:07:00
  • Linux下MySQL整个数据库的备份与还原

    2008-12-29 13:20:00
  • 删除多余的属性 xmlns=""

    2010-08-24 18:41:00
  • 不得不承认:韩国的 Web 设计很唯美

    2009-05-13 13:26:00
  • 影响ORACLE汉字显示的字符集问题

    2008-06-13 16:49:00
  • 每个ASP程序员必备的知识

    2008-09-21 21:34:00
  • asp之家 网络编程 m.aspxhome.com