CSS选择器能够做的事情远比你预想的多得多。
不少开发人员学习JavaScript时得心应手,但是学习CSS时总是没有感觉,因为他们习惯把CSS属性或者CSS选择器看成一个个独立的个体,就好像传统编程语言中的一个个API一样。传统编程语言讲求逻辑清晰,层次分明,主要为功能服务,因此这种不拖泥带水的API是非常有必要的。但CSS是为样式服务的,它重表现,轻逻辑,如同人的思想一样,相互碰撞才能产生火花。
尤其对于CSS选择器,作为CSS世界的支柱,其作用好比人类的脊柱,与HTML结构、浏览器行为、用户行为以及整个CSS世界相互依存、相互作用,这必然会产生很多碰撞,让CSS选择器变得非常强大。
同时,CSS选择器本身也并非你想得那么单纯。