属性选择器的介绍

属性选择器顾名思义就是通过标签的属性来查找标签的选择器。让我们来回忆一下标签的属性是什么?HTML5 的所有标签共同拥有的属性叫作全局属性,除此之外还有标签自己拥有的属性,就叫作私有属性吧。除了 ID 选择器、标签选择器、Class 选择器以外,属性选择器能够满足以上选择器的功能,属性选择器的适用范围非常广泛。

语法规则及使用案例

属性选择器的基本语法:labelName[attrName=attrValue] {}。attrName 代表标签的属性,attrValue 代表属性值。比如,选择属性为 class,且属性值为 css 的 a 标签:

<a class="css" href="cnblogs.com/shiramashiro">My Blog Address.</a>
<a class="css html">Talk is cheap, show me the code.</a>
a[class="css"] {
font-size: 20px;
}

以上是属性选择器最基本的用法,属性值等价的方式来筛选不太满足需求,类似于正则表达式的方式选择标签是最为高效和灵活的方式,属性选择器也提供这样的方式:

属性选择的方式 描述
label[attr^=value] 表示带有以 attr 命名的属性,且属性值是以 value 开头的元素。
label[attr$=value] 表示带有以 attr 命名的属性,且属性值是以 value 结尾的元素。
label[attr*=value] 表示带有以 attr 命名的属性,且属性值至少包含 value 的元素。比如 zh-CN 和 zh,"value" 为 zh 时,zh-CN 和 zh 都匹配。
label[attr|=value] 表示带有以 attr 命名的属性的元素,属性值为 "value" 或是以 "value-" 为前缀("-"为连字符)开头。如 zh-CN 和 zh-TW 可以用 zh 作为 value。
label[attr~=value] 表示带有以 attr 命名的属性的元素,且属性值中至少有一个值为 value。

^=value

匹配属性值以 value 开头的标签(元素):

<div id="ti">hello</div>
<div id="title">javascript!</div>
div[id^="ti"] {
font-size: 20px;
}

$=value

匹配属性值以 value 结尾的标签(元素):

<div id="title">hello</div>
<div id="le">javascript!</div>
div[id$="le"] {
font-size: 20px;
color: red;
}

*=value

匹配属性值至少包含一个 value 的标签;value 是属性值的一部分:

<div id="title title header top leader">hello</div>
<div id="title top">javascript!</div>
div[id*="der"] {
font-size: 20px;
color: red;
}

|=value

匹配属性值为 "value" 或是以 "value-" 为前缀("-"为连字符)开头的标签:

<div class="zh-CH">中国</div>
<div class="zh-TW">中國</div>
div[class|="zh"] {
font-size: 20px;
color: red;
}

~=value

匹配属性值中至少有一个值为 value 的标签:

<div class="zh-CH zh">中国</div>
<div class="zh-TW">中國</div>
div[class~="zh"] {
font-weight: bold;
}

CSS 选择器(一):属性选择器的更多相关文章

  1. CSS伪元素选择器和属性选择器

    伪元素 能使用伪元素来选择元素中的一些特殊位置 一.给段落定义样式 :first-letter  首字母(只能用于块元素) :first-line  第一行 1.为p元素中的第一个字符设置颜色为黄色, ...

  2. id选择器、类选择器、属性选择器

    在网页编辑时,通常要对样式进行各种设置.我们借助CSS样式设计中的选择器,就能很好很方便的对它们进行管理和设置了. 今天,跟大家分享一下几个常用的选择器:id选择器.类选择器.属性选择器. id选择器 ...

  3. CSS 简介、语法、派生选择器、id 选择器、类选择器、属性选择器

    CSS 概述 CSS 指层叠样式表 (Cascading Style Sheets) 样式定义如何显示 HTML 元素 样式通常存储在样式表中 把样式添加到 HTML 4.0 中,是为了解决内容与表现 ...

  4. 2、前端--初见前后端交互、CSS简介、基本选择器、组合选择器、属性选择器、分组与嵌套、伪类选择器

    今日内容概要 初窥后端框架 css简介 css选择器 今日内容详细 初次体验前后端交互 # 代码无需掌握 只看效果即可 """后端框架:可以简单的理解为别人写好的一个非常 ...

  5. css选择器(2)——属性选择器和基于元素结构关系的选择器

    在有些标记语言中,不能使用类名和id选择器,于是css2引入了属性选择器. 3.属性选择器 a)根据是否存在该属性来选择 如果希望选择有某个属性的元素,例如要选择有class属性的所有h1元素,使其文 ...

  6. selenium选择器_css属性选择器

    搜索 <button class="btn-search tb-bg" type="submit" data-spm-click="gostr= ...

  7. python 之 前端开发(基本选择器、组合选择器、 交集与并集选择器、序列选择器、属性选择器、伪类选择器、伪元素选择器)

    11.3 css 11.31 基本选择器 11.311 id选择器 根据指定的id名称,在当前界面中找到对应的唯一一个的标签,然后设置属性 <!DOCTYPE html> <html ...

  8. CSS3 选择器——笔记+实战案例(基本选择器、组合选择器、属性选择器、伪类选择器)

    使用CSS3 选择器——笔记 CSS通过选择器控制HTML元素,CSS选择器对网页对象可以实现一对一.一对多或者多对一的匹配. 一.CSS3选择器分类 CSS选择器在CSS2.1选择器的基础上新增了属 ...

  9. CSS3 新增选择器:伪类选择器和属性选择器

    一.结构(位置)伪类选择器( : ) 1.:first-child 2.:last-child 3.:nth-child(n)或者:nth-child(2n)或者:nth-child(2n+1) &l ...

  10. css3选择器归类整理---基本选择器和属性选择器

    css3选择器分类 CSS3选择器分类如下图所示 选择器的语法 1.基本选择器 类型 代码 功能描述 通配选择器 *{ margin: 0; padding: 0; border: none; } 选 ...

随机推荐

  1. 【freertos】011-信号量、互斥量及优先级继承机制源码分析

    目录 前言 11.1 任务同步 11.2 信号量概念 11.3 二值信号量 11.3.1 二值信号量概念 11.3.2 优先级翻转 11.3.3 二值信号量运作机制 11.4 计数信号量 11.4.1 ...

  2. model.apply(fn)或net.apply(fn)

    详情可参考:https://pytorch.org/docs/1.11/generated/torch.nn.Module.html?highlight=torch%20nn%20module%20a ...

  3. iPhone x 的区别

    最近入手两台iPhone x, 均从官网购买,两台分别是2017年和2018年生产,对比了一下,两台还有是一些差别: 首先苹果X使用起来还是非常爽的,没有HOME键,明显比按HOME键方便,因为按HO ...

  4. sharepoint 配置失败,已引发类型为System.ArgumentException的异常。其他异常信息:domainName参数不支持指定的值。

    解决方法:在域控制器中加入sharepoint计算机,设置为administrators组中

  5. js烧脑面试题大赏

    本文精选了20多道具有一定迷惑性的js题,主要考察的是类型判断.作用域.this指向.原型.事件循环等知识点,每道题都配有笔者详细傻瓜式的解析,偏向于初学者,大佬请随意. 第1题 let a = 1 ...

  6. 工具箱之 IKVM.NET 项目新进展

    在各种群里经常讨论的一个事情是.NET 如何调用 Java 的实现,最常见的场景之一就是在加解密方面Java提供的密钥,C#无法解密, C#中byte范围是[0,255],而Java中的byte范围是 ...

  7. Python递归函数的定义和几个小例子

    递归函数 (1)什么是递归函数? 我们都知道,一个函数可以调用其他函数.如果这个函数在内部调用它自己,那么这个函数就叫递归函数. (2)递归函数的作用 举个例子,我们来计算阶乘 n! = 1 * 2 ...

  8. OWL页面创建Copy功能,把选择内容复制到QC

  9. NC16539 [NOIP2013]表达式求值

    NC16539 [NOIP2013]表达式求值 题目 题目描述 给定一个只包含加法和乘法的算术表达式,请你编程计算表达式的值. 输入描述 输入仅有一行,为需要你计算的表达式,表达式中只包含数字.加法运 ...

  10. Kafka 延时队列&重试队列

    一.延时队列 1. 简介 TimingWheel是kafka时间轮的实现,内部包含了⼀个TimerTaskList数组,每个数组包含了⼀些链表组成的TimerTaskEntry事件,每个TimerTa ...