“>”(大于号)CSSselect器是什么意思?
例如:
div > p.some_class { /* Some declarations */ }
>
符号是什么意思?
>
是子组合子 ,有时被错误地称为直接后代组合子。 1
这意味着select器div > p.some_class
只select直接嵌套在 div
的.some_class
段落,而不是任何嵌套的段落。
插图:
<div> <p class="some_class">Some text here</p> <!-- Selected [1] --> <blockquote> <p class="some_class">More text here</p> <!-- Not selected [2] --> </blockquote> </div>
select什么,什么不是:
-
选
这个p.some_class
直接位于div
内部,因此在这两个元素之间build立了父子关系。 -
未选中的
这个p.some_class
被div
的blockquote
包含,而不是div
本身。 虽然这个p.some_class
是div
的后代,但它不是一个孩子, 这是一个孙子。因此,当
div > p.some_class
不匹配这个元素时,div p.some_class
会使用后代组合div p.some_class
代替。
1 许多人进一步称之为“直接的孩子”或“直接的孩子”,但这完全没有必要(对我而言令人难以置信的烦恼),因为无论如何,子元素是立即的 ,所以它们意味着完全相同的东西。 没有“间接的孩子”这样的事情。
正如其他人所说,这是一个孩子的select。 这是适当的链接。
它匹配直接在div
下的类some_class
p
元素。
>
(大于号)是一个CSS组合器。
combinator是解释select器之间的关系的东西。
一个CSSselect器可以包含多个简单的select器。 在简单的select器之间,我们可以包含一个组合器。
CSS3中有四种不同的组合器:
- 后代select器(空间)
- 子select器(>)
- 邻接兄弟select器(+)
- 一般兄弟select器(〜)
注意: <
在CSSselect器中无效。
例如:
<!DOCTYPE html> <html> <head> <style> div > p { background-color: yellow; } </style> </head> <body> <div> <p>Paragraph 1 in the div.</p> <p>Paragraph 2 in the div.</p> <span><p>Paragraph 3 in the div.</p></span> <!-- not Child but Descendant --> </div> <p>Paragraph 4. Not in a div.</p> <p>Paragraph 5. Not in a div.</p> </body> </html>
输出:
礼貌
所有带有class some_class
p
标签都是div
标签的直接子标签。
HTML
<div> <p class="some_class">lohrem text (it will be of red color )</p> <div> <p class="some_class">lohrem text (it will NOT be of red color)</p> </div> <p class="some_class">lohrem text (it will be of red color )</p> </div>
CSS
div > p.some_class{ color:red; }
所有具有.some_class
的直接.some_class
将获得应用于它们的样式。
(儿童select器)在css2中引入。 div p {}selectp元素的所有元素,而div> p只selectp元素,而不是大孩子,大孩子等等。
<style> div p{ color:red } /* match both p*/ div > p{ color:blue } /* match only first p*/ </style> <div> <p>para tag, child and decedent of p.</p> <ul> <li> <p>para inside list. </p> </li> </ul> </div>
有关CSS Ce的更多信息,请查看我的博客, cssselect器和css3select器