0基础学习CSS(二十九)选择器

CSS 属性 选择器


CSS 属性选择器用于根据元素的属性或属性值来选择 HTML 元素。

属性选择器可以帮助你在不需要为元素添加类或 ID 的情况下对其进行样式化。

**注意:**IE7 和 IE8 需声明 !DOCTYPE 才支持属性选择器!IE6 和更低的版本不支持属性选择器。

以下是常见的 CSS 属性选择器:

1、[attribute]

选择带有指定属性的所有元素(无论属性值是什么)。

复制代码
/* 选择所有具有 `type` 属性的元素 */
[type] {
  border: 1px solid red;
}

2、[attribute="value"]

选择具有指定属性和值完全匹配的元素。

复制代码
/* 选择所有 `type` 属性等于 `text` 的元素 */
[type="text"] {
  background-color: yellow;
}

3、[attribute~="value"]

选择属性值中包含指定词(用空格分隔的词列表之一)的元素。

复制代码
/* 选择属性值中包含 `button` 的元素 */
[class~="button"] {
  font-weight: bold;
}

4、[attribute|="value"]

选择具有指定值或者以指定值开头并紧跟着连字符 - 的属性值的元素,常用于语言代码。

复制代码
/* 选择所有 `lang` 属性是 `en` 或者以 `en-` 开头的元素 */
[lang|="en"] {
  color: green;
}

5、[attribute^="value"]

选择属性值以指定值开头的元素。

复制代码
/* 选择所有 `href` 属性以 `https` 开头的链接 */
[href^="https"] {
  text-decoration: none;
}

6、[attribute$="value"]

选择属性值以指定值结尾的元素。

复制代码
/* 选择所有 src 属性以 .jpg 结尾的图片 */
[src$=".jpg"] {
  border: 2px solid blue;
}

7、[attribute="value"]*

选择属性值中包含指定值的元素。

复制代码
/* 选择所有 `title` 属性中包含 `tutorial` 的元素 */
[title*="tutorial"] {
  font-style: italic;
}

通过属性选择器,你可以轻松选择元素并基于它们的属性设置特定样式,增加了灵活性和可维护性。


属性选择器

下面的例子是把包含标题(title)的所有元素变为蓝色:

实例

title\] { color:blue; } *** ** * ** *** ### 属性和值选择器 下面的实例改变了标题title='runoob'元素的边框样式: ### 实例 \[title=runoob\] { border:5px solid green; } *** ** * ** *** ### 属性和值的选择器 - 多值 下面是包含指定值的title属性的元素样式的例子,使用(\~)分隔属性和值: ### 实例 \[title\~=hello\] { color:blue; } 下面是包含指定值的lang属性的元素样式的例子,使用(\|)分隔属性和值: ### 实例 \[lang\|=en\] { color:blue; } *** ** * ** *** ### 表单样式 属性选择器样式无需使用class或id的形式: ### 实例 input\[type="text"\] { width:150px; display:block; margin-bottom:10px; background-color:yellow; } input\[type="button"\] { width:120px; margin-left:35px; display:block; }

相关推荐
MarkHD3 小时前
智能体在车联网中的应用:第51天 模仿学习与离线强化学习:破解数据效率与安全困局的双刃剑
学习·安全
wearegogog1236 小时前
基于 MATLAB 的卡尔曼滤波器实现,用于消除噪声并估算信号
前端·算法·matlab
Drawing stars6 小时前
JAVA后端 前端 大模型应用 学习路线
java·前端·学习
崇山峻岭之间6 小时前
Matlab学习记录33
开发语言·学习·matlab
品克缤6 小时前
Element UI MessageBox 增加第三个按钮(DOM Hack 方案)
前端·javascript·vue.js
小二·6 小时前
Python Web 开发进阶实战:性能压测与调优 —— Locust + Prometheus + Grafana 构建高并发可观测系统
前端·python·prometheus
小沐°6 小时前
vue-设置不同环境的打包和运行
前端·javascript·vue.js
科技林总7 小时前
【系统分析师】3.5 多处理机系统
学习
qq_419854057 小时前
CSS动效
前端·javascript·css
烛阴7 小时前
3D字体TextGeometry
前端·webgl·three.js