css的属性选择器是什么?属性选择器的使用
css 属性选择器是什么?有什么用?
在HTML中的元素都可以具有属性,这些属性是显示或修改其行为的附加值。html中包含许多属性,但不是所有HTML元素都适用所有的属性。与元素无关的属性不会对它有任何影响。
不管该属性是否能正确的应用,你仍然可以通过CSS选择它。但是,在网站上任何地方使用无效的HTML属性都是非常糟糕的做法,因为不同的浏览器对无效HTML的解析是不同的。你不能责怪浏览器让你的网站看起来很奇怪,他们只是想通过填补空白来解释你的错误代码。
而,css的属性选择器允许我们选择具有特定属性或特定值属性的元素,即:可以根据指定的属性名称找到对应的标签,然后设置属性。【相关视频教程推荐:css3教程】
css 属性选择器的使用
在html中属性值必须是标识符或字符串。该规范相当模糊,因为它指出选择器中属性名称和值的区分大小写取决于文档语言。由于浏览器行为不一致这一事实,最安全的做法是确保所使用的案例在CSS和HTML之间保持一致。
属性选择器可以有7种方式匹配(从CSS3规范开始):
1、[<attribute>]
定位所有包含<attribute>属性的元素,无论其值是多少。
例:
<div data-colour="green"></div> <div data-colour="blue"></div> <div data-colour="yellow"></div>
css代码选择:
[data-colour] { /* 一些性质,例:color..... */ }
2、[<attribute>=<value>]
定位所有<attribute>属性值为<value>的元素。
<div data-colour="green"></div>
[data-colour="green"] { /* 一些性质 */ }
3、[<attribute>~=<value>]
使用<attribute>属性定位元素,其值为空格分隔的单词列表,其中一个必须为<value>。
<value>本身不能包含空格,也不能是空字符串。
<div data-colour="green yellow blue"></div>
[data-colour~="green"] { /* 一些性质 */ }
4、[<attribute>|=<value>]
使用<attribute>属性定位元素,其值正好<value>或以<value>开头,后跟“ - ”。
注:主要用于语言子码匹配中,如“en”,“en-US”和“en-UK”。
<div data-colour="green-table"></div> <div data-colour="green-chair"></div> <div data-colour="green-bottle"></div>
[data-colour|="green"] { /* 一些性质 */ }
5、[<attribute>^=<value>]
子串匹配选择器。使用<attribute>属性定位元素,其值以<value>开头。
注:<value>不能是空字符串。
<div data-colour="greenish-yellow"></div> <div data-colour="greengoblin"></div>
[data-colour^="green"] { /* 一些性质 */ }
6、[<attribute>$=<value>]
子串匹配选择器。使用<attribute>属性定位元素,其值以<value>结尾。
注:<value>不能是空字符串。
<div data-colour="yellowish-green"></div> <div data-colour="seagreen"></div>
[data-colour$="green"] { /* 一些性质 */ }
7、[<attribute>*=<value>]
子串匹配选择器。使用<attribute>属性定位元素,其值包含<value>的实例。
注:<value>不能是空字符串。
<div data-colour="goblingreenish"></div>
[data-colour*="green"]{ /* 一些性质 */ }
组合属性选择器
属性选择器具有与类和伪类相同的特定级别;你可以将属性选择器与其他选择器(如元素,类或ID)组合在一起。例:
div[data-colour="green"] { /* 特异性为11 */ } .swatch[data-colour="green"] { /* 特异性为20 */ } #tile25[data-colour="green"] { /*特异性为110 */ }
你还可以组合多个属性选择器以匹配特定模式。例如,如果您只想使用包含单词“green”的替换文字定位2x图像,则你的选择器将如下所示:
img[srcset~="2x"][alt*="green"] { /* 一些性质 */ }
此外,由于属性值是作为字符串读取的,因此你不必担心转义特殊字符以使它们匹配,这是与类或ID不同。这意味着我们可以*地拥有以下内容:
[data-emotion="以上就是css的属性选择器是什么?属性选择器的使用的详细内容,更多请关注其它相关文章!
推荐阅读
-
JavaScript中使用Math.PI圆周率属性的方法
-
简介JavaScript中Math.LOG10E属性的使用
-
HTML5自定义data-* data(obj)属性和jquery的data()方法的使用
-
Vue使用watch监听一个对象中的属性的实现方法
-
css设置字体样式属性(分享css设置字体颜色的代码)
-
javascript 获取特定的 CSS属性值
-
CSS教程之css选择器 、属性、值
-
CSS3利用text-shadow属性实现多种效果的文字样式展现方法
-
使用CSS3的appearance属性改变任何元素的浏览器默认风格
-
CSS3支持IE6, 7, and 8的边框border属性