选择继承 (::selection, ::-moz-selection)
Selection inheritance (::selection, ::-moz-selection)
无法理解::-moz-selection
伪元素的继承方式。我的意思是:如果我将 ::-moz-selection 应用于正文标签
是否有可能
body::moz-selection {
background: red;
}
它也适用于 body 标签内的段落 (
)?
我找到了这个 http://dev.w3.org/csswg/css-pseudo-4/#highlight-cascade
This could alternately be described in terms of inheritance. The observable differences would be in how inherit and unset behave. Should it inherit from the parent ::selection or the originating element? Opera does the former, Gecko/Blink the latter.
我不太明白 'originating' 元素的含义('parent' 对我来说似乎很清楚)以及这种继承的工作方式。
在CSS中,伪元素的原始元素只是指伪元素附加到的元素。例如,在选择器 body::selection
中,原始元素是 body
元素。
那个注释是说在 Opera (Presto) 中,子元素的 ::selection
伪元素从其父元素的 ::selection
伪元素继承它们的样式,而在 Gecko 和 Blink 中,它们继承自它们的原始元素 only(这是所有现有 CSS1 和 CSS2 伪元素的标准行为)。
多个 ::selection
样式的级联行为似乎是明确定义的:采用最内层的声明。但继承是症结所在,尤其是考虑到相互冲突的实现行为。特别是,如果在 ::selection
上指定了 color: inherit
,该值应该取自原始元素的颜色(行为与 currentColor
完全相同),还是应该取自其父元素的 [=12] =]?
无法理解::-moz-selection
伪元素的继承方式。我的意思是:如果我将 ::-moz-selection 应用于正文标签
body::moz-selection {
background: red;
}
它也适用于 body 标签内的段落 (
)? 我找到了这个 http://dev.w3.org/csswg/css-pseudo-4/#highlight-cascade
This could alternately be described in terms of inheritance. The observable differences would be in how inherit and unset behave. Should it inherit from the parent ::selection or the originating element? Opera does the former, Gecko/Blink the latter.
我不太明白 'originating' 元素的含义('parent' 对我来说似乎很清楚)以及这种继承的工作方式。
在CSS中,伪元素的原始元素只是指伪元素附加到的元素。例如,在选择器 body::selection
中,原始元素是 body
元素。
那个注释是说在 Opera (Presto) 中,子元素的 ::selection
伪元素从其父元素的 ::selection
伪元素继承它们的样式,而在 Gecko 和 Blink 中,它们继承自它们的原始元素 only(这是所有现有 CSS1 和 CSS2 伪元素的标准行为)。
多个 ::selection
样式的级联行为似乎是明确定义的:采用最内层的声明。但继承是症结所在,尤其是考虑到相互冲突的实现行为。特别是,如果在 ::selection
上指定了 color: inherit
,该值应该取自原始元素的颜色(行为与 currentColor
完全相同),还是应该取自其父元素的 [=12] =]?