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

    Usare i css con o senza - # -

    Ciao a tutti, scusate se posto questa domanda probabilmente un po stupida, però osservando dei css che non ho creato io, noto che molti usano definire i div in questo modo:
    Codice PHP:
    div#nomedeldiv {
        
    width250px;

    ...io invece scrivo sempre così:
    Codice PHP:
    .nomedeldiv {
        
    width250px;

    Cosa cambia tra i due metodi?

  2. #2
    con il punto crei una classe. il div va usato una sola volta nel documento, mentre per la classe puoi fare piu' richiami.

  3. #3
    Scusa, non ho capito... ma perchè se scrivo div#nomedeldiv , non posso usarlo più volte?
    Non funziona? e poi scusa che vantaggio c'è allora? ...uhmm, mi sa che ancora non ho capito niente!

  4. #4
    prendi la guida base di questo sito che è molto chiara.
    i div vanno usati una volta sola, le classe piu' volte.
    per farti un'esempio: l'header è uno solo. al div che lo contiene associ un id. mentre se nella pagina hai degli elementi che si ripetono vanno formattati con una classe.

  5. #5
    ok, ora penso di aver capito! grazie 1000 per il chiarimento!

  6. #6
    Originariamente inviato da gabip87
    i div vanno usati una volta sola, le classe piu' volte.
    Non è corretto ciò che dici, probabilmente è un errore di battitura... il div è un elemento, non un selettore o una proprietà CSS. Tu intendevi l'id.

    La differenza è sia pratica che concettuale e vale per i div come per qualsiasi altro elemento:
    • class rappresenta una classe di elementi, vale a dire, uno o più stili applicati ad una serie di elementi.
    • id identifica in mod UNIVOCO uno ed un solo elemento della pagina, che non si ripete più.


    La funzione dell'id è più "filosofica" che pratica; infatti, nulla ti impedisce (potenzialmente) di rimpiazzare tutti gli id con delle classi. Ma questo sarebbe concettualmente errato; per quale motivo? Per via delle 2 differenti situazioni in cui ti trovi.

    Se tu devi creare uno stile per i titoli di un sito, per delle voci di menu, insomma, per qualsiasi elemento che venga ripetuto più di una volta, allora una usi una classe, e l'uso è coerente con la funzione.

    Però ad esempio, se tu devi creare uno stile per il tuo header, o per il menu di navigazione, ciò che ti occorre non è una "classe", perché gli stili si riferiscono esclusivamente a quell'elemento.

    Se poi vuoi specificare a quale elemento può applicarsi una classe o un id, puoi farlo... ad esempio,
    codice:
    /* ottiene lo sfondo rosso solo l'elemento <div> a cui è applicato id="header" */
    div#header { background-color:red; }
    
    /* ottiene lo sfondo rosso un solo elemento, di qualsiasi tipo, a cui è applicato id="header" */
    #header { background-color:red; }
    
    /* ottiene sfondo giallo qualsiasi elemento <span> a cui sia applicato class="evidenziato" */
    span.evidenziato { background-color: yellow; }
    
    /* ottiene sfondo giallo qualsiasi elemento a cui sia applicato class="evidenziato" */
    .evidenziato { background-color: yellow; }
    Una volta afferrato il senso, è abbastanza semplice comprendere... no?
    «Prendo rifugio nel grande BOH»

  7. #7
    Chiarissimo mahamatt... sei stato gentilissimo!
    Ti ringrazio

  8. #8
    Originariamente inviato da mahamatt
    Non è corretto ciò che dici, probabilmente è un errore di battitura... il div è un elemento, non un selettore o una proprietà CSS. Tu intendevi l'id.
    si, ho sbagliato a scrivere.

  9. #9
    La funzione dell'id è più "filosofica" che pratica; infatti, nulla ti impedisce (potenzialmente) di rimpiazzare tutti gli id con delle classi.
    Non sono d'accordo: ricordo che gli id hanno nelle regole CSS una specificità di gran lunga superiore a quella delle classi, e questa è una differenza "pratica" di non poco conto.
    "This is the end, Clark... for both of us"

  10. #10
    Originariamente inviato da erredeco
    Non sono d'accordo: ricordo che gli id hanno nelle regole CSS una specificità di gran lunga superiore a quella delle classi, e questa è una differenza "pratica" di non poco conto.
    D'accordo, ma se tu rimpiazzi tutti gli id con delle classi, la pagina si presenta alla stessa identica maniera; non è tanto un errore "concreto" (ovvero: non ostacola la fruizione della pagina) ma "semantico" (ovvero: stai usando uno strumento per uno scopo diverso da quello per cui lo strumento è stato concepito).

    Un po' come se, per piantare i chiodi, usassi una cosa qualunque (che so, un grosso mestolo) anziché un martello; i chiodi li pianti lo stesso, ma lo strumento è sbagliato!
    È solamente questo che volevo dire

    Il fatto che la cosa funzioni, naturalmente, non esclude che usare "class" dove andrebbe usato "id" è un grave errore semantico, come spiegato... ma era solo per fare un esempio
    «Prendo rifugio nel grande BOH»

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 © 2026 vBulletin Solutions, Inc. All rights reserved.