Ich habe ziemlich große Probleme, weil ich einige Eingabetypen nicht mehr formatieren muss. Ich hatte so etwas wie:
.registration_form_right input:not([type="radio")
{
//Nah.
}
Aber ich möchte auch keine Kontrollkästchen stylen.
Ich habe es versucht:
.registration_form_right input:not([type="radio" && type="checkbox"])
.registration_form_right input:not([type="radio" && "checkbox"])
.registration_form_right input:not([type="radio") && .registration_form_right input:not(type="checkbox"])
Wie benutzt man &&
? Und ich muss verwenden||
bald verwenden, und ich denke, dass die Verwendung gleich sein wird.
Update:
Ich weiß immer noch nicht, wie ||
und &&
richtig. Ich konnte in W3-Dokumenten nichts finden.
Antworten:
&&
funktioniert durch Aneinanderreihen mehrerer Selektoren wie folgt:Ein anderes Beispiel:
||
funktioniert durch Trennen mehrerer Selektoren durch Kommas wie folgt:quelle
not
scheint ab IE9 zu funktionieren (dank der von @geofflee bereitgestellten Tabelle).UND (
&&
):ODER (
||
):quelle
||
Fall "ODER" (aka ). Zur Verdeutlichung aktualisiert.||
aus den Beispielen ein zu konstruieren . Natürlich wird es.registration_form_right input
nach der Vereinfachung, aber das Wesentliche ist, dass Sie das,
as verwenden||
. Sie könnteninput:not([type="radio"]), input:not([name="foo"])
für ein nicht triviales Beispiel verwenden.So wählen Sie die Eigenschaften
a
UNDb
einesX
Elements aus:So wählen Sie Eigenschaften
a
ODERb
einesX
Elements aus:quelle
Die
:not
Pseudoklasse wird vom IE nicht unterstützt. Ich hatte stattdessen so etwas:Einige Überschneidungen, aber es ist ein kleiner Preis für eine höhere Kompatibilität.
quelle
Sie können das Verhalten von "ODER" irgendwie mit & und: nicht reproduzieren.
quelle
Ich denke, Sie hassen es, mehr Selektoren zu schreiben und sie durch ein Komma zu teilen?
und übrigens
sieht für mich eher aus wie "Eingabe, die nicht beide Typen hat" :)
quelle
radio
(aber den ) auswählen würdecheckbox
und der zweite das Gegenteil tun würde. Die Vereinigung der beiden würde beidecheckbox
und enthaltenradio
.Nur für den Fall, dass jemand wie ich feststeckt. Nachdem ich die Post und einige Treffer und Gerichtsverfahren durchgesehen hatte, funktionierte dies für mich.
quelle
Ein Wort der Vorsicht. Mehrere aneinander reihen
not
Selektoren erhöht die Spezifität des resultierenden Selektors, was das Überschreiben erschwert: Grundsätzlich müssen Sie den Selektor mit allen Nots finden und kopieren und in Ihren neuen Selektor einfügen.Ein
not(X or Y)
Selektor wäre großartig, um ein Aufblähen der Spezifität zu vermeiden, aber ich denke, wir müssen uns daran halten, die Gegensätze zu kombinieren, wie in dieser Antwort .quelle