元素选择子:
- * 任何元素
- E 与E标签结合的任何元素
- E F E的所有派生标签中,有F标签的元素
- E > F 或者 E/F E的所有直接的拥有F标签的子类
- E + F 所有具有F标签的元素,紧靠的前一个元素有E标签
- E ~ F 所有具有F标签的元素,前一个兄弟元素有E标签
属性选择子:
@和引号是可选项。例如,div[@foo='bar']也是一个合法的属性选择子。
- E[foo] 有一个属性:"foo"
- E[foo=bar] 有一个等于"bar"的属性"foo"
- E[foo^=bar] 有一个以"bar"开头的属性"foo"
- E[foo$=bar] 有一个以"bar"结束的属性"foo"
- E[foo*=bar] 有一个包含"bar"子字符串的属性"foo"
- E[foo%=2] 有一个能被2整除的属性"foo"
- E[foo!=bar] 有一个不等于"bar"的属性
伪类:
- E:first-child E是其父亲的第一个孩子
- E:last-child E是其父亲的最后一个孩子
- E:nth-child(n) E是其父亲的第n个孩子(从1开始递增)
- E:nth-child(odd) E是其父亲的奇数个孩子
- E:nth-child(even) E是其父亲的偶数个孩子
- E:only-child E是其父亲唯一的孩子
- E:checked E是一个有选择属性的元素,并且其选中状态为true(例如一个radio或者checkbox)
- E:first 结果集中的第一个E元素
- E:last 结果集中的最后一个E元素
- E:nth(n) 结果集中的第n个E元素(从1开始)
- E:odd nth-child(奇数)的简写
- E:even nth-child(偶数)的简写
- E:contains(foo) E的innerHTML,包含"foo"子字符串
- E:nodeValue(foo) 包含一个textNode的E,textNode有一个等于"foo"的nodeValue
- E:not(S) 一个与简单的S选择子不相等的E元素
- E:has(S) 一个E元素,拥有与简单的S选择子匹配的派生类
- E:next(S) 一个E元素,它的下一个兄弟节点与简单的S选择子相匹配
- E:prev(S) 一个E元素,它的上一个兄弟节点与简单的S选择子相匹配
CSS值选择子:
- E{display=none} css值"display"等于"none"
- E{display^=none} css值"display"以"none"开始
- E{display$=none} css值"display"以"none"结束
- E{display*=none} css值"display"包含子字符串"none"
- E{display%=2} css值"display"可以被2整除
- E{display!=none} css值"display"不等于"none"
原文: https://blog.csdn.net/cankykong1/article/details/16947591