2017-06-13 98 views
-1

這個問題的目的是考察行爲的可能性是這樣的:是:之前:兄弟姐妹之後?

.element:before { 
 
    content: 'before'; 
 
    color: orange; 
 
} 
 

 
.element:after { 
 
    content: 'after'; 
 
    color: green; 
 
} 
 

 
.element:after:hover + .element:before { 
 
    color: red; 
 
}
<div class='element'>&nbsp;</div>

回答

4

僞元素不能被兄弟組合程序,因爲sibling combinators only represent element siblings,不僞元素的兄弟姐妹的目標。

因此,雖然由::before::after生成的框在佈局方面是彼此的兄弟姐妹,但爲了兄弟姐妹組合的目的,它們不是。

當它的::after僞元素被徘徊時,不可能爲元素的::before僞元素編寫選擇器。 (就此而言,::after:hover在選擇器4之外無效,並且不存在實現。)有hacks可以使用諸如pointer-events之類的東西,但沒有任何東西可以保證適用於所有瀏覽器。