CSS “y” y “o”

Tengo un problema bastante grande, porque necesito anatemizar desde el diseño de algunos tipos de entrada. Tenía algo así como:

.registration_form_right input:not([type="radio") { //Nah. } 

Pero tampoco quiero marcar las casillas de verificación.

He intentado:

 .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"]) 

Cómo usar && ? Y tendré que usar || pronto, y creo que ese uso será el mismo.

Actualizar:
Todavía no sé cómo usar || y && correctamente. No pude encontrar nada en los documentos W3.

&& funciona al unir varios selectores como-así:

 
div.class1.class2 { /* foo */ }

Otro ejemplo:

  input[type="radio"].class1 { /* foo */ } 

|| funciona separando múltiples selectores con comas como-así:

 
div.class1, div.class2 { /* foo */ }

AND ( && ):

 .registration_form_right input:not([type="radio"]):not([type="checkbox"]) 

O ( || ):

 .registration_form_right input:not([type="radio"]), .registration_form_right input:not([type="checkbox"]) 

Para seleccionar las propiedades a Y b de un elemento X :

 X[a][b] 

Para seleccionar propiedades a O b de un elemento X :

 X[a],X[b] 

The :not pseudo-class no es compatible con IE. Me gustaría algo como esto en su lugar:

 .registration_form_right input[type="text"], .registration_form_right input[type="password"], .registration_form_right input[type="submit"], .registration_form_right input[type="button"] { ... } 

Hay alguna duplicación allí, pero es un precio pequeño a pagar por una mayor compatibilidad.

Supongo que odias escribir más selectores y dividirlos por una coma.

 .registration_form_right input:not([type="radio"]), .registration_form_right input:not([type="checkbox"]) { } 

y por cierto esto

 not([type="radio" && type="checkbox"]) 

me parece más como “entrada que no tiene estos dos tipos” 🙂

Por si acaso, si alguien está atascado como yo. Después de revisar la publicación, probar y probar esto funcionó para mí.

 input:not([type="checkbox"])input:not([type="radio"]) 

De alguna manera, puede reproducir el comportamiento de “O” usando & y: no.

 SomeElement.SomeClass [data-statement="things are getting more complex"] :not(:not(A):not(B)) { /* things aren't so complex for A or B */ } 
    Intereting Posts