我很好奇为什么使用>
或其他组合器不会影响 CSS 选择器的特异性,即为什么div span
(匹配div 内某处的跨度)和div > span
(匹配作为 div 的直接子级的跨度)在特异性方面被认为是相等的。
我确实意识到组合器的使用与特异性完全无关,但我想知道是否有某种原因。
我很好奇为什么使用>
或其他组合器不会影响 CSS 选择器的特异性,即为什么div span
(匹配div 内某处的跨度)和div > span
(匹配作为 div 的直接子级的跨度)在特异性方面被认为是相等的。
我确实意识到组合器的使用与特异性完全无关,但我想知道是否有某种原因。
这实际上已经在工作组邮件列表中提出,早在这个线程中。
它基本上归结为,是的,直观地说,带有组合器的选择器看起来更具体,但是从当前算法扩展而来的算法,考虑到这一点变得比现在使用的“简单”三元组复杂得多,这对于人本来的样子。
最后,
虽然可能是这种情况,但这是 CSS2 中为数不多的事情之一 多年来一直可互操作地实施,因此不会 CSS2.1 的变化。
“如果它没有坏,就不要修理它。” 似乎是最后的召唤。