Betrachten Sie die folgende (Fiddle finden Sie hier http://jsfiddle.net/burninromz/YDuzC/8/)Problem mit benachbarten CSS-Selektor in Chrome und Safari in
Was geschehen soll, wenn Sie das Kontrollkästchen klicken, sollte das entsprechende Etikett erscheinen. Dies funktioniert nicht in Safari und Chrome, sondern in IE, Firefox und Opera. Wenn Sie Elemente sowohl in Chrome als auch in Safari untersuchen, sehen Sie, dass der Stil tatsächlich auf das Element angewendet wird, aber nicht korrekt dargestellt wird. Irgendwelche Ideen, warum das ist?
Siehe unten.
html
<div>
<input type="checkbox"></input>
<span>Unchecked</span>
<span>Unchecked</span>
css
input[type="checkbox"]:checked + span {
display:none
}
input[type="checkbox"] + span {
display:block
}
input[type="checkbox"]:checked + span + span {
display:block
}
input[type="checkbox"] + span + span {
display:none
}
Dieser Selektor funktioniert nicht
input[type="checkbox"]:checked + span + span {
display:block
}
Dieses * * kann ein Betrogene meiner Frage: http://stackoverflow.com/questions/17219286/why-does-the-general-sibling -combinator-allow-toggle-pseudo-elements-content (Ich bin mir nicht sicher, aber es scheint wahrscheinlich der gleiche Fehler zu sein). –
Wenn Sie stattdessen den allgemeinen Geschwisterkombinator auf Ihrem vorletzten Selektor verwenden, wird es funktionieren, als würden Sie FYI erwarten: http://jsfiddle.net/YDuzC/10/ – Adrift