CSS3 选择器——属性选择器(复习)

本文深入解析CSS3属性选择器的用法,包括E[attr]、E[attr=value]、E[attr~=value]、E[attr^=value]、E[attr$=value]、E[attr*=value]、E[attr|=value],通过实例展示如何高效定位元素和匹配文件类型,提升用户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. E[attr]:只使用属性名,但没有确定任何属性值;
    .demo a[id] {background: blue; color:yellow;font-weight:bold;} 
    .demo a[href][title] {background: yellow; color:green;}
     
  2. E[attr="value"]:指定属性名,并指定了该属性的属性值;
    .demo a[id="first"] {background: blue; color:yellow;font-weight:bold;}
    .demo a[href="http://www.w3cplus.com"][title] {background: yellow; color:green;}
     对于E[attr="value"]这种属性值选择器有一点需要注意:属性和属性值必须完全匹配,特别是对于属性值是词列表的形式时,如:
    <a href="" class="links item" title="open the website">7</a>
     例如上面的代码,如果你写成:
    .demo a[class="links"]{color:red};/*这是一种写法不能和上面的html所匹配*/
     
  3. E[attr~="value"]:指定属性名,并且具有属性值,此属性值是一个词列表,并且以空格隔开,其中词列表中包含了一个value词,而且等号前面的“〜”不能不写;
    .demo a[title~="website"]{background:orange;color:green;}
     这个实例再次证明了E[attr="value"]和E[attr~="value"]之间的区别,和其中“〜”所取的作用,我总结了一句话:属性选择器中有波浪(〜)时属性值有value时就相匹配,没有波浪(〜)时属性值要完全是value时才匹配。 
  4. E[attr^="value"]:指定了属性名,并且有属性值,属性值是以value开头的;
    .demo a[href^="http://"]{background:orange;color:green;}
    .demo a[href^="mailto:"]{background:green;color:orange;}
     
  5. E[attr$="value"]:指定了属性名,并且有属性值,而且属性值是以value结束的;
    .demo a[href$="png"]{background:orange;color:green;}
     
  6. E[attr*="value"]:指定了属性名,并且有属性值,而且属值中包含了value;
    .demo a[title*="site"]{background:black;color:white;}
     
  7. E[attr|="value"]:指定了属性名,并且属性值是value或者以“value-”开头的值(比如说zh-cn);
    .demo a[lang|="zh"]{background:gray;color:yellow;}

 

 有关于属性选择器就上面这些内容了,属性选择器除了IE6不支持外,其他的浏览器都能支持,这样一来,如果你在你的页面上使用了属性选择器,而且你需要处 理ie6兼容问题,那你就需要确保IE6用别的方法来实现或者你应该确保IE6用户将能获得一个可用的页面。七种属性选择器中E[attr="value"] 和E[attr*="value"]是最实用的,其中E[attr="value"]能帮我们定位不同类型的元素,特别是表单form元素的操作,比如说 input[type="text"],input[type="checkbox"]等,而E[attr*="value"]能在网站中帮助我们匹配不 同类型的文件,比如说你的网站上不同的文件类型的链接需要使用不同的icon图标,用来帮助你的网站提高用户体验,就像前面的实例,可以通过这个属性 给".doc",".pdf",".png",".ppt"配置不同的icon图标。

 

原文:http://www.w3cplus.com/css3/attribute-selectors

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值