什么是“+”(加号)CSSselect器是什么意思?
例如:
p + p { /* Some declarations */ }
我不知道这是什么意思。 有什么区别,只是定义一个没有+ p的风格?
此select器意味着该样式仅适用于紧跟在另一个段落之后的段落。
普通的pselect器会将样式应用于页面中的每个段落。
请参阅W3.org上的相邻select器 。
这只会在IE7或以上的作品。 在IE6中,风格不会适用于任何元素。 顺便说一下,这也适用于> combinator。
另请参阅Microsoft 在Internet Explorer中的CSS兼容性概述。
这是相邻的兄弟select器。
从风格博客的飞溅。
要定义一个CSS邻接select器,使用加号。
h1+p {color:blue;}上面的CSS代码将格式化第一段后面(不在里面)的任何h1标题为蓝色。
h1>pselect作为h1元素的直接(第一代)子(内部)的任何p元素。
-
h1>p匹配<h1><p></p></h1>(<h1>内部)
h1+p将select与h1+p元素同级的第一个p元素(与dom相同的级别)。
-
h1+p匹配<h1></h1><p><p/>(<h1>旁边/之后)
+符号表示select一个adjacent sibling
例:
CSS
p + p { font-weight: bold; }
HTML
风格将适用于第二个<p>
<div> <p></p> <p></p> </div>
例
看到这个小提琴,你会永远明白它: http : //jsfiddle.net/7c05m7tv/ (另一个小提琴: http : //jsfiddle.net/7c05m7tv/70/ )
浏览器支持
Internet Explorer 5.x Macintosh支持相邻同级select器。 在Netscape 6预览版本1中,所有可用的所有无数平台以及Opera 4 for Windows的预览版本3都支持它们。 在IE5 for Windows和Opera 3 for Windows中处理邻居兄弟select器时存在缺陷。
相关提示:当元素dynamic放置在与select器匹配的元素之前时,Internet Explorer 7不会正确更新样式。 在Internet Explorer 8中,如果通过单击链接dynamic插入元素,则在链接失去焦点之前,不会应用第一个子样式。
学到更多
“+”是相邻的兄弟select器。 它会直接selectp(不是孩子或父母,兄弟姐妹)。
+select器被称为Adjacent Sibling Selector 。
例如,select器p + pselect紧跟在p元素之后的p元素
它可以被认为是一个looking outsideselect器,它检查紧接着的元素。
这里是一个示例代码片段,使事情更加清晰:
body { font-family: Tahoma; font-size: 12px; } p + p { margin-left: 10px; }
<div> <p>Header paragraph</p> <p>This is a paragraph</p> <p>This is another paragraph</p> <p>This is yet another paragraph</p> <hr> <p>Footer paragraph</p> </div>
它将匹配紧邻元素“p”的任何元素p 。 请参阅: http : //www.w3.org/TR/CSS2/selector.html
它将select下一个段落,并从左边开始缩进段落,就像在Microsoft Word中一样。
Plus(+)将select第一个直接元素。 当你使用+select器时,你必须给出两个参数。 这将通过例子更加清楚:在这里,div和span是参数,所以在这种情况下,只有在div之后的第一个span才会被设置。
div+ span{ color: green; padding :100px; } <div>The top or first element </div> <span >this is span immediately after div, this will be selected</span> <span>This will not be selected</span>
以上风格只适用于div后的第一个跨度。 请注意,第二个跨度不会被选中。