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的形式:

实例

inputtype="text" { width:150px; display:block; margin-bottom:10px; background-color:yellow; } inputtype="button" { width:120px; margin-left:35px; display:block; }

相关推荐
之歆1 分钟前
Day10_Node.js 与 Express 开发实战指南:从零到一构建专业级 Web 服务
前端·node.js·express
问心无愧05134 分钟前
ctf show web入门107
android·前端·笔记·android studio
一尘之中4 分钟前
基于架构的软件开发方法
学习·架构·ai写作
2301_815645387 分钟前
react
前端·react.js
chase。7 分钟前
【学习笔记】面向机器人食物舀取的 spillage-aware 引导扩散策略
笔记·学习·机器人
FirstFrost --sy11 分钟前
基于高并发服务器的web小游戏测试
服务器·前端·javascript·c++·python·集成测试
youyu-youyu13 分钟前
oss阿里云图片链接url高清图片设置为缩略图 vue 减少加载体积流量
前端·javascript·vue.js·阿里云·云计算
zhonghaoxincekj15 分钟前
基于 168MHz MCU 的直流继电器全参数自动化测试方案解析
经验分享·功能测试·科技·学习·测试工具·创业创新·制造
独隅19 分钟前
前端工程化在Chrome插件开发中的具体实践完全指南
前端·chrome
sbjdhjd21 分钟前
Tomcat(下) 集群高可用实战:反向代理・负载均衡・分布式 Session
运维·前端·云原生·开源·tomcat·负载均衡·memcached