欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

css的属性选择器是什么?属性选择器的使用

程序员文章站 2022-04-10 12:08:58
...
css的属性选择器是什么?本篇文章就和大家谈谈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的属性选择器是什么?属性选择器的使用的详细内容,更多请关注其它相关文章!