2013-03-18 18 views

Antwort

43

http://www.w3.org/TR/selectors/

8.3.2. Allgemeiner Geschwisterkombinator

Der allgemeine Geschwisterkombinator besteht aus dem Zeichen "Tilde" (U + 007E, ~) , das zwei Sequenzen von einfachen Selektoren trennt. Die Elemente, die durch die zwei Sequenzen repräsentiert werden, teilen sich das gleiche Elternteil in dem Dokumentbaum und das durch die erste Sequenz dargestellte Element geht dem Element, das durch das zweite repräsentiert wird, voraus (nicht unbedingt sofort).

Beispiel

h1 ~ pre 

einstimmt <pre> hier:

<h1>Definition of the function a</h1> 
<p>Function a(x) has to be applied to all figures in the table.</p> 
<pre>function a(x) = 12x/13.5</pre> 

Es gibt auch + Wähler, für benachbarte Geschwister combinator: mit h1 + pre die <pre> Tag richtig sein müsste nach <h1>

9

Es wendet den Stil auf alle Elemente an, die dem zweiten Selektor entsprechen, wenn sie nach den Elementen angezeigt werden, die dem ersten Selektor entsprechen.

<p>Line one</p> 
<hr /> 
<p>Line two</p> 
<p>Line three</p> 

und eine CSS-Regel: Um zum Beispiel eines HTML-Snippet gegeben

hr ~ p { 
    font-weight: bold; 
} 

nur <p>Line two</p> und <p>Line three</p> wird fett erscheinen. In Ihrem Beispiel hat Visual Studio ein Problem bei der Interpretation des Modifikators :hover, da es sich nicht wirklich um ein Element handelt. Wenn Sie es aus der Regel entfernen, funktioniert es möglicherweise ordnungsgemäß.