一直对last-child
和last-of-type
区分不开来。last-child
比较好理解,就是同一组兄弟元素中的最后一个元素
,举个例子:
上述例子匹配的条件写成伪代码
就是 “最后一个位置
&&div标签
”
而last-of-type
,则不一样,实际上last-of-type
是先对同类型的标签进行分组
,然后再匹配位置
,写成伪代码
就是 “同类型标签分组
&& 最后一个位置
”,举个例子:
可以看到是对p
和div
标签先各自分组,然后匹配最后一个位置
。
不过还有一点要注意的是用类名
做匹配时,并不会根据类名
进行分组,然后再进行匹配
可以看到没有成功给类名为.a
的标签设置背景,实际上此时的搜索条件是 “同类型标签分组
&&最后一个位置
&&类名a
”