下面用生动形象的比喻总结这些CSS属性选择器:
1.
E[attribute*=value]
—— 属性里的“藏头诗”
就像在文章中寻找包含特定词句的段落,只要属性值中含有value
(无论开头、中间还是结尾),都能被选中。
例:a[href*="login"]
会抓住所有链接中包含“login”的,比如“/user/login”或“login-page”。
2.
E[attribute$=value]
—— 属性值的“句号”
专抓属性值以value
结尾的元素,像按文件后缀筛选。
例:img[src$=".png"]
会选中所有PNG图片,比如“cat.png”或“icon.png”。
3.
E[attribute^=value]
—— 属性值的“开头宣言”
盯准属性值以value
开头的元素,像安检时只看护照封面。
例:a[href^="https"]
会选中所有HTTPS安全链接,比如“https://bank.com”。
4.
E[attribute|=value]
—— 连字符的“家族姓氏”
匹配属性值等于value
,或以value-
开头的元素,像同一家族的姓氏标签。
例:div[lang|="en"]
会选中lang="en"
或lang="en-US"
的div。
5.
E[attribute~=value]
—— 空格分隔的“独立房间”
属性值由空格分隔,必须有一个独立单词是value
,像找公寓里的某个房间号。
例:div[class~="red"]
会选中class="big red box"
,但忽略class="reddish"
。
6.
E[attribute=value]
—— 精确匹配的“双胞胎”
属性值必须完全等于value
,像密码锁必须一模一样才能开。
例:input[type="text"]
只会选中严格写有type="text"
的输入框。
7.
E[attribute]
—— “存在即合理”
只要元素有该属性,不管值是什么,像招聘时只看是否有某技能标签。
例:a[target]
会选中所有带target
属性的链接,无论值是_blank
还是其他。
总结比喻:
*=
是“包含”
$=
是“结尾”
^=
是“开头”
|=
是“姓氏家族”
~=
是“独立房间”
=
是“一模一样”
[attr]
是“有就行”
记住这些比喻,属性选择器就像不同的“搜索条件”,帮你精准锁定目标元素! 🎯