三、css选择符越详细越好吗?为什么? 其实这个问题,我想很多前端都不会犯,但是对于新人或者涉足不深的人来说偶尔不经意间还是会写出来,在说这个前,首先我们应该知道css的查找方式和js的不同,总所周知js查找元素是从上向下的查找,也就是先查找到父级,接着在是子级,而css则相反,它的属性选者符是从后向前查找的,比如.class .a则是先会遍历整个dom树查到类名为a的元素接着在继续向上查在这个元素的父级上有没有一个类名为class的元素,因此对于属性选择符则是越简略越好(当然基于模块化却不能完全执行这个准则),因为这样会加快查找速度(无需根据上级类去一一匹配),同时也会方便你的维护和修改,除了性能还能方便维护和修改,因为对于选择符优先级,越详细则写的越深(即层次越多)那当下个元素需重用覆盖的时候必须要写比前者更高的优先级层次,那么这样的模块越多你的代码也就叠加的越高,而且对于以后的模块迁移调整起来更加是场灾难;例如要定义div .a 下的 ul 中的所以li的字符大小 .a ul li{font-size:12px;}这样中的ul是远远多余的因为li本身就是不可能单独存活的,当然如果你a中有ol的话那我更加建议给ol和ul分布加上类去单独定义;