2010-03-23 9 views
15

Per esempio io ho uno stile css come questo:Come lasciare che il selettore css escluda un elemento?

input.validation-passed {border: 1px solid #00CC00; color : #000;} 

Il quadro di convalida javascript Io uso inietterà ogni tag input con un class = "validazione-passato" .Per gli elementi come <input type='text' /> ..., questo è ok, ma per <input type='button' />, voglio che questo non sia applicato, come devo fare questo?

+0

È necessario supportare IE6? – SLaks

+0

sì, ho bisogno, grazie – Sawyer

risposta

20
.validation-passed:not(input[type="button"]) {color:red;} 
+4

Potrebbe essere utile ricordare che questa è la sintassi CSS3 che potrebbe non essere completamente supportata da tutti i browser. – danyim

3

Se non è necessario per supportare IE6, è possibile utilizzare un selettore di attributo:

input[type="text"].validation-passed {border: 1px solid #00CC00; color : #000;} 
+0

+1 Non c'è nessun IE6 CSS, solo il modo in cui so di farlo comunque, non ha senso preoccuparsi di ciò. –

+0

Grazie, ma ho bisogno di supportare IE6! – Sawyer

0

Non credo che si può. Ma puoi iniettare una piccola parte di javascript per analizzare i tuoi input e aggiungere la classe text-validation-passed a tutti gli input text con la classe validation-passed (o rimuovere la classe dall'ingresso del pulsante se non ti serve).

Problemi correlati