¿Hay algo como! = (No igual) en CSS? por ejemplo, tengo el siguiente código:
input {
...
...
}
pero para algunas entradas necesito anular esto. Me gustaría hacer eso agregando la clase "reset" a la etiqueta de entrada, por ejemplo
<input class="reset" ... />
y luego simplemente omita esta etiqueta de CSS.
¿Como puedo hacer eso?
La única forma en que puedo ver sería agregar alguna clase a la etiqueta de entrada y reescribir el CSS de la siguiente manera:
input.mod {
...
...
}
html
css
css-selectors
Alex Ivasyuv
fuente
fuente
Respuestas:
En CSS3, puede usar el
:not()
filtro,pero no todos los navegadores son totalmente compatibles con CSS3 todavía, así que asegúrese de saber lo que está haciendo,que ahora es compatible con todos los navegadores principales (y lo ha sido durante bastante tiempo; esta es una respuesta antigua ...).Ejemplo:
y el CSS
Nota: esta solución alternativa ya no debería ser necesaria; Lo dejo aquí por contexto.
Si no desea utilizar CSS3, puede establecer el estilo en todos los elementos y luego restablecerlo con una clase.
fuente
:not()
selectores:input:not(.avoidme):not(.avoidmetoo)
evitará elementos con cualquiera de las clases,input:not(.avoidme.andme)
evitará elementos con ambas clases.:not(.this.that) { }
el trabajo puede, pero si lo hace algo, como:not(.this, .that) { }
te vas a caer hacia abajo, usted tiene que daisy chain ellos, tales como::not(.this):not(.that)
. Entiendo que probablemente sepa esto, estoy tratando de ayudar a futuros lectores :):not()
.También puede hacerlo "revertiendo" los cambios en la clase de reinicio solo en CSS.
fuente
CSS3 tiene
:not()
, pero aún no está implementado en todos los navegadores. Sin embargo, está implementado en la versión preliminar de la plataforma IE9.http://www.w3.org/TR/css3-selectors/#negation
Mientras tanto, tendrás que ceñirte a los métodos anticuados.
fuente
También puede abordar esto apuntando a un atributo como este:
input:not([type=checkbox]){ width:100%; }
En este caso, todas las entradas que no sean del tipo "casilla de verificación" tendrán un ancho del 100%.
fuente
Interesante, solo probé esto para seleccionar el elemento DOM usando JQuery y ¡funciona! :)
Esta página tiene 168 divs que no tienen la clase 'comentario-copia'
fuente
[attr!="value"]
es un selector de solo jQuery api.jquery.com/attribute-not-equal-selectoren lugar de class = "reset" puede invertir la lógica teniendo class = "valid" Puede agregar esto por defecto y eliminar la clase para restablecer el estilo.
Entonces de tu ejemplo y el de Tomás
y
fuente