Classi HTML: buone pratiche ed errori comuni

Google pubblica l’analisi di un miliardo di pagine web: le classi HTML più usate mostrano dati interessanti ed errori da evitare.

Esistono numerosi studi sulle pratiche più diffuse nel web design, ma spesso queste analisi vengono effettuate su un campione ristretto, non attendibile. Google ha pubblicato uno studio che fa luce su alcuni aspetti: pur non essendo troppo approfondito, può contare su un campione di più di un miliardo di pagine web. Abbastanza per fermarsi ad osservare i dati provando a trarne qualche conclusione.

Tra gli argomenti dello studio voglio considerare soprattutto le classi HTML, per capire anche quante speranze esistano di avvicinarsi alla nascita di un web semantico.

I risultati dello studio di Google sulle classi HTML

Prima di tutto, è necessario analizzare un aspetto: la maggior parte delle pagine web non utilizza alcuna classe. E’ un dato che potrebbe sorprendere, ma ricordate che stiamo parlando di una rete dove regnano ancora incontrastate le pagine con codice non valido, generate da software inefficaci, dove le tabelle vengono usate ancora per il layout.

La classifica delle classi più utilizzate è la seguente:

  1. footer
  2. menu
  3. title
  4. small
  5. text
  6. content
  7. header
  8. nav
  9. copyright
  10. button
  11. main
  12. search
  13. msonormal
  14. date
  15. smalltext
  16. body
  17. style1
  18. top
  19. white
  20. link

Alcune sono comuni, come header e footer, l’utilizzo di altre invece è totalmente errato.

Gli errori più comuni

Tra le classi di questa top 20, sono senza dubbio da evitare tutte quelle con un nome senza significato come msonormal o style1. Tra l’altro MsoNormal è una classe generata da Office esportando un documento come pagina web. Il fatto che sia presente tra le più utilizzate è indicativo della qualità media della rete e di come vengano realizzati molti siti: che sia un problema irrisolvibile?

Sono poi usate in maniera sbagliata le classi con un nome collegato all’aspetto presentazionale, come white.

Una guida da seguire

Se avete dubbi su come scrivere il codice HTML, utilizzando ID e classi nel modo corretto, trovate alcune indicazioni utili in un articolo che ho pubblicato qualche mese fa: “Guida all’utilizzo di ID e classi nel codice HTML”. L’argomento è sempre valido, per questo ci tengo a segnalarlo.

Il codice dovrebbe essere scritto sempre in maniera comprensibile, trovando il giusto equilibrio tra sintesi e leggibilità, senza dimenticare di usare nomi legati alla funzione di un elemento e non al suo aspetto.

Nel caso aveste delle aggiunte da segnalare o qualche suggerimento da farmi, lasciateli come sempre nei commenti e provvederò ad integrare la guida: il vostro contributo è sempre prezioso.

Vuoi far crescere il tuo progetto online?

Tommaso Baldovino

UX/UI Designer, professionista del web con più di 15 anni di esperienza su WordPress. Sono disponibile a seguire nuovi progetti dall'ideazione alla realizzazione finale. Scrivo ogni 2 settimane la mia newsletter.

15 commenti su “Classi HTML: buone pratiche ed errori comuni”

  1. Quando sento di persone che ancora utilizzano Word per fare siti mi viene da star male, molto male.
    Io temo che neanche tra 100 anni arriveremo ad avere siti validati, molte persone che masticano l’informatica non conoscono minimamente l’importanza della questione.

    Ne approfitto per una domanda: il box degli articoli correlati è opera tua o di un plugin?

    Ciao e complimenti per la grafica del sito, superba!

  2. Secondo me…il problema si risolve costringendo Microsoft a togliere quella funzione assurda da Word… :D

    Apparte i scherzi, devo dire che non è cosi facile trovare nomi adatti ad ogni classe. Molto spesso mi ritrovo che per siti complessi realizzo CSS con decine e decine di classi, Tom dovrei rivedere il mio modo di scrivere codice? :)

  3. Non tutti hanno le conoscenze per comprendere questi problemi.
    Chi usa Word per fare un sito internet non ha assolutamente idea dei meccanismi che ci sono dietro ed è già un miracolo che riesce a pubblicare il proprio sito su un hosting gratuito. Tom

  4. Il mio problema è che usando pochi ID e classi affidandomi quasi esclusivamente ai selettori discendenti, mi si riempirebbe il css di !important. Sintomo di cattivo design?

  5. Mi sorge un dubbio… ma le classi non si dovrebbero usare al posto degli ID solo quando abbiamo da identificare più di un elemento per pagina con certe caratteristiche?!

    Quindi, di footer e di header ce n’è solo uno per pagina…come fanno ad essere le classi piu usate? non dovrebbero essere gli ID piu usati?

    (scusa l’ignoranza, ma essere autodidatti non è semplice XD)

  6. @DnaX: non è detto, ognuno è libero di adottare la logica che preferisce, non è vietato usare !important nei CSS, anche se personalmente io di solito lo evito. A volte comunque basta un ID ben posizionato per risolvere questi problemi.

    @Raspo: lo studio di Google riguarda solo le classi, header e footer a quanto pare vengono usate molto anche in questa forma, pur essendo elementi unici. Comunque hai ragione, sarebbe più logico usare degli ID.

  7. Non sono pienamente d’accordo con quanto detto, secondo me la problematica va divisa, in primo luogo va tenuto conto che molte persone neofite creano le pagine web in maniera automatica con sofwtare gratuiti o in versione dimostrativa per cui io obbligherei le case produttrici di questi ultimi ad aggiornarsi e di fornire template validati e non pagine con tabelle come spesso vedo nei sofwtare rilasciati agli utenti. Altro discorso è invece se gli addetti ai lavori non creano siti accessibili e ce ne sono moltissimi che per non perdere tempo non adottano le ultime raccomandazioni di validazione. Comunque direi che sono stati fatti passi da gigante rispetto ad anni fa e che molti webmaster cercano di creare strutture accessibili e navigabili, impegnandosi ad imparare e mettere in pratica. Un plauso va sicuramente a loro….

  8. Molto interessante come articolo, dal mio canto che sono un programmatore, cerco sempre di utilizzare le classi e gli Id in maniera logica e corretta.