最近,我碰上了* *
在CSS 。
网站引用- 站点链接 。
对于单个*
在CSS样式表的使用,互联网和堆栈溢出充斥着的例子,但我不知道使用两个* *
CSS中的符号。
我GOOGLE了它,但无法找到这方面有任何相关信息,作为一个单一的*
选择所有元素,但我不知道为什么网站上使用了两次。 ,这是什么缺少的一部分,为什么使用这个技巧(如果它是一个黑客)?
最近,我碰上了* *
在CSS 。
网站引用- 站点链接 。
对于单个*
在CSS样式表的使用,互联网和堆栈溢出充斥着的例子,但我不知道使用两个* *
CSS中的符号。
我GOOGLE了它,但无法找到这方面有任何相关信息,作为一个单一的*
选择所有元素,但我不知道为什么网站上使用了两次。 ,这是什么缺少的一部分,为什么使用这个技巧(如果它是一个黑客)?
就像任何其他的时间,你把两个选择了一个又一个(比如li a
),你得到的后代组合子。 因此, * *
是任何其他元素的后代的任何元素-换句话说,这是不是整个文件的根元素的任何元素。
只是有点大例子:
尝试添加该网站上的:
* { outline: 2px dotted red; }
* * { outline: 2px dotted green; }
* * * { outline: 2px dotted orange; }
* * * * { outline: 2px dotted blue; }
* * * * * { outline: 1px solid red; }
* * * * * * { outline: 1px solid green; }
* * * * * * * { outline: 1px solid orange; }
* * * * * * * * { outline: 1px solid blue; }
演示: http://jsfiddle.net/l2aelba/sFSad/
实施例2:
演示: http://jsfiddle.net/l2aelba/sFSad/34/
* *
匹配除顶级元素,如一切html
。
*
指申请给出样式的所有元素。
* *
是指申请给予样式元素的所有子元素。 例:
body > * {
margin: 0;
}
这适用保证金样式身体的所有子元素。 同样的方式,
* * {
margin: 0;
}
适用margin: 0
至*
的子元素。 总之,它适用margin: 0
到几乎每一个元素。
一般情况下,一个*
就够了。 有没有需要两个* *
。
其选择嵌套在另一个元素中的所有元素以几乎相同的方式div a
将选择所有<a>
某处嵌套在内部元件<div>
元素。