*CSS运算符有什么作用?还有其他CSS运营商吗?

Chi*_*aka 2 css operators css-selectors

在研究如何从CSS中的列表元素构建嵌套表时,我偶然发现了这个页面:http://css.maxdesign.com.au/listamatic2/horizo​​ntal01.htm.

我注意到样式表在CSS中使用了一些我不熟悉的符号,即>*符号似乎是某种CSS运算符.

例如:

ul#navlist li * a:link, ul#navlist li * a:visited
Run Code Online (Sandbox Code Playgroud)

我能够谷歌,并发现>只是表明两个元素之间的父/子关系,但我仍然不知道是什么*.我也很想知道是否还有其他类似的"操作员",如果有的话,有人可以引导我参考所有这些吗?

Bol*_*ock 7

*通用选择器.它选择任何元素.

然而,它是一个简单的选择器,因此它不属于所谓的组合器(它表示两个元素之间的关系).>是孩子组合子,正如你所说,它定义了两个元素之间的父子关系.

之间的空间ul#navlistli,li*等都是后裔组合程序.与此不同>,空间并不表示亲子关系; 它只是要求一个元素包含在其中,无论是孩子,孙子,曾孙等,而不是兄弟姐妹.

这两个选择器之间的区别(来自您的链接):

ul#navlist li > a:link, ul#navlist li > a:visited
ul#navlist li * a:link, ul#navlist li * a:visited
Run Code Online (Sandbox Code Playgroud)

这是第一个>要求a:linka:visited元素
直接位于ul#navlist li元素中的元素,

而第二个与*请求a:linka:visited元素
坐内的内的任何元件ul#navlist li.
换句话说,a:link, a:visited不是直接在其中ul#navlist li.