li > ul > li
选择li
比 a 的第一层更深的所有元素ul
。
li
选择所有 li 元素
li:not(li > ul > li)
应该选择li
不比 a 的第一级更深的所有元素ul
——也就是说,只有第一级元素——但它没有。为什么?
谢谢!
li > ul > li
选择li
比 a 的第一层更深的所有元素ul
。
li
选择所有 li 元素
li:not(li > ul > li)
应该选择li
不比 a 的第一级更深的所有元素ul
——也就是说,只有第一级元素——但它没有。为什么?
谢谢!
原因li:not(li > ul > li)
不起作用是因为这li > ul > li
不是一个简单的选择器(正如 Felix Kling 在对您问题的评论中指出的那样)。
获得顶层的最简单方法是给最外层一个类或 id ul
,然后执行以下操作:
.ulClassNameOrID > li {}
但是,以下内容也可以满足您的要求(请参见小提琴),因为它不会选择任何ul
前一个的直接子级li
(因此不是外部列表的子列表):
:not(li) > ul > li {}