Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Un aiuto sui selettori :)

    Ciao ragazzi avrei un paio di domande da fare sui selettori...

    Devo realizzare uno stile per i miei forms, si tratta di parecchia roba dinamica pertanto, preferirei non applicare la classe ad ognuno in modo separato =)

    Avevo cominciato col creare

    <style ...>
    INPUT { ... }
    </style>

    Tuttavia cosi' tutti i tipi possibili di input meno la textarea che ha appunto un tag a se stante vengono inclusi...

    Ricordando di quanto letto sulla guida delle css ho pensato al selettore di attributo:

    <style ...>
    INPUT[type="text],INPUT[type="password"],... { ... }
    </style>

    Ho scoperto a mio malgrado che questo selettore non e' c@gato da nessun browser

    Che mi consigliate di fare per subselezionare solamente alcuni tipi di INPUT? Ad es ci sono il radio ed il checkbox che alcuni browser trattano come pare a loro ^^' chi applica uno stile, chi non lo fa etc..

    -----

    Detto questo poi mi chiedevo se esiste un selettore inverso, ovvero un togli classe per dire...

    Esempio:

    <div class="classe1">
    <span>aaaa</span><span class="-classe1">bbb</span><span>ccc</span>
    </div>

    Che permette insomma di "de-applicare" quanto effettuato dalla classe intendo tutto cio' che e' ereditato etc...

    Un idea potrebbe essere quella di applicare una classe ad un form del tipo

    <style ...>
    .forms INPUT { ... }
    </style>
    ....
    ....
    <form class="forms">
    <input type="text" ...><input type="checkbox" class="-forms"...><input type="password" ...>
    </form>

    Esiste una cosa del genere?

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    La classe negativa non esiste.

    Esistono le classi, per cui puoi assegnare una classe a tutti gli elementi che vuoi con una certa formattazione:
    <input class="pippo" ...>

    Il selettore
    input[type="text"]
    esiste, ma attenzione alla sintassi.
    Il tag INPUT non esiste (e` riconosciuto dai browser, ma non dagli standard), per cui non puoi usarlo come selettore CSS. I selettori di tag vanno usati solo minuscoli.
    Inoltre nel tuo esempio manca un carattere virgolette (ma forse era un errore di trascrizione).
    Purtroppo non e` riconosciuto dal browser IE, per cui in pratica (nelle pagine reali) non si puo` usare.

    Al momento la soluzione piu` semplice e` assegnare una classe.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3

  4. #4
    mi domando che differenza ci sia, anche esistesse la possibilità di deapplicare uno stile, tra applicare un comportamento a tutti gli input e tramite id o una classe variare la dove serve e deapplicare ?? comunque dovresti scrivere la deapplicazione quindi nessun vantaggio, nel primo (e normale), caso puoi anche variare da sngolo input a singolo input

  5. #5
    @Mich_
    Si, mi sono mangiato un "

    @serialkiller
    Si sarebbe trattata di una soluzione + pulita per evitare di aggiungere una classe a tutti gli elementi :P

    Ora che ci penso però posso creare una classe che annulla gli effetti della precedente e applicarla solo a checkbox & radio buttons... si credo che faro' cosi' in un futuro eventualmente riscrivero' la css e modifichero' quella classe... molto lavoro in meno rispetto a togliere la classe a tutti gli elementi form

    Grazie

  6. #6
    Ora che ci penso però posso creare una classe che annulla gli effetti della precedente e applicarla solo a checkbox & radio buttons...
    che è esattamente quello che dicevo prima.

    inserire una classe o un id per tutti gli elementi che devono comportarsi diversamente, non vedo la differenza di scrivere:

    <input class="pippo"...

    o

    <input class="-forms"...

    se non che la seconda (nel caso fosse stato possibile) è limitativa, ne senso che non ti permetterebbe di applicare comportamenti diversi ma solo di annullare quelli madre

  7. #7
    Sapete che faccio? Implemento la soluzione input[type="checkbox"] e risolvo con quella, per ie mi spiace... si spera che alla v 7.xx abbiano fatto qualcosa di buono... ^^ gia' ne ho fatti troppi di fix per ie... finche' si tratta di metter mano al livello css ok ma non creo una classe in + inutile solo per impedire di visualizzare con un doppio bordino un checkbox :P

    W FFOX & OPERA

  8. #8
    Ecco qua:

    input[type="checkbox"], input[type="radio"] {
    border : 0px;
    padding : 0px;
    }

    Questa dovrebbe garantire la miglior resa su tutti e 3 i browsers... anche se ie7 dovesse decidere di implementare il selettore e aggiungere uno stile per il checkbox..

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.