Non sei loggato | Registrati | Login

Organizziamoci al meglio per progettare un foglio di stile CSS Aggiungi

Tutorials / CSS

Benvenuto! Se sei un nuovo visitatore ti consiglio di iscriverti al mio Feed RSS in modo da essere sempre aggiornato riguardo l'uscita di nuovi articoli oppure sbirciare tra i tutorials ed i progetti.
Per avere un'idea del best-content presente in questo blog puoi leggere il post intitolato "Ed ora è il momento di rilanciare alcune iniziative! (1a parte e 2a parte)".
Buona navigazione e grazie per la visita!

Requisiti

  • Sapere cos'è un CSS
  • Aver già creato un file CSS

Introduzione

L'organizzazione è un aspetto molto importante che risulta essere rilevante in ogni progetto (grande o piccolo che sia) che si ha intenzione di portare a termine.
Naturalmente l'esperienza aiuta moltissimo nella creazione di un "metodo" che permetta allo sviluppatore di ridurre al minimo i tempi di sviluppo, facilitare la lettura dei risultati e soprattutto rendere le successive modifiche il meno invasive possibili.
Questo tutorial ha lo scopo di dare la giusta enfasi ad alcuni aspetti organizzativi che interessano la creazione di un foglio di stile CSS.

I commenti

I commenti hanno sempre giocato un ruolo secondario nella scrittura di codice appunto perchè non rientrano in quest'ultima definizione.
Durante lo sviluppo di un foglio di stile sappiamo benissimo la funzione di ciascuna riga ma se ci ritorniamo dopo alcune settimane molto probabilmente ci verrà l'istinto di sbattere la testa contro il monitor.
Inoltre non è da escludere il fatto che chi modificherà un file CSS non necessariamente ne è l'autore.
Un esempio di commento molto utile è il seguente:

  1. /* Sfrutto un'anomalia di Explorer per risolverne un'altra (Fix IE min-height) */
  2. #div {
  3.         min-height:25px;
  4.         height:auto !important;
  5.         height:25px;
  6. }

Un utilizzo alternativo dei commenti è quello di marcare il CSS indicandone la versione, licenza ed altri aspetti di contorno.

  1. /* ---------------------
  2. Life is a Flash
  3. Versione: 0.9a
  4. Ultima modifica: 2 Ottobre 2006
  5. Autore: Daniele Simonin
  6. Licenza: Creative Commons
  7. --------------------- */

Ciò risulta molto utile nel caso in cui si voglia specificare la possibilità di modifica, diffusione da parte di altre persone.

L'importanza di scegliere i nomi degli stili

Come già sappiamo possiamo far riferimento ad una classe (usando ".") o ad un ID (usando "#") e assegnargli un determinato stile di formattazione.
Che regole possiamo seguire per decidere il nome delle classi o degli ID?

  • Utilizzare nomi che rispecchino lo scopo e non l'apparenza dello stile: evitare quindi di utilizzare classi (o ID) come .titoloVerde, .testoCorsivo che facciano riferimento al tipo di formattazione.
    Si consiglia invece di mettere in evidenza lo scopo dello stile e quindi privilegiare nomi come .titolo, .notaImportante, .commento, ecc... Perchè? Per il motivo che in un futuro non sarà sempre garantita la corrispondenza apparenza-nome, ad esempio cambiando i titoli in rosso e non più in verde.
  • Non usare nomi che facciano riferimento a posizioni: in un certo senso è molto simile al primo punto; in questo caso si sconsigliano nomi come .barraSinistra, .immagineTop, ecc... consigliando invece nomi come .banner, .menu, ecc...
  • Evitare nomi insignificanti: A discapito della dimensione finale del file è utile utilizzare nomi che abbiano un significato evitando quindi nomi come .z7, .tr1, ecc...

Utilizzare classi multiple

L'utilizzo di classi multiple facilita di molto la gestione e la creazione dei CSS.
Immaginiamo di avere un form dove alcuni campi sono obbligatori ed altri no:

  1. <div class="campo">...</div>
  2. <div class="campoRichiesto"> ... </div>
  3. <div class="campoErrore"> ... </div>

Questo spezzone di codice XHTML obbliga la creazione di 3 stili che hanno in comune alcune righe di formattazione (e quindi c'è ridondanza):

  1. .campo {...}
  2. .campoRichiesto {...}
  3. .campoErrore {...}

La ridondanza, in qualsiasi codice sia presente, è sempre una zavorra di negatività visto che porta lo sviluppatore a dover modificare allo stesso modo più righe, gestire le incongruenze e molti altri fastidi.
L'utilizzo multiplo delle classi ci viene in aiuto:

  1. <div class="campo">...</div>
  2. <div class="campo richiesto"> ... </div>
  3. <div class="campo errore"> ... </div>

Come potete notare a 2 DIV ho associato 2 classi (non c'è un limite) che mi rendono la composizione del CSS molto più efficiente:

  1. .campo {...}
  2. .richiesto {...}
  3. .errore {...}

In questo caso non esiste alcuna ridondanza (se non voluta) e quindi se vogliamo modificare l'aspetto di tutti i campi basta fare una singola modifica e non perderci tra le centinaia di righe del CSS.

Sfruttare l'ereditarietà

Il titoletto dice tutto: un modo per rendere il codice molto più leggibile e leggero è quello di sfruttare a pieno l'ereditarietà degli stili.
Evitare situazioni del genere:

  1. <div class="prodottoTitolo">...</div>
  2. <div class="prodottoDescrizione">...</div>

A favore di:

  1. <div class="prodotto">
  2.  <div class="titolo">...</div>
  3.  <div class="descrizione">...</div>
  4. </div>

Questa è pura organizzazione che rende il codice molto più facile da vedere e quindi da gestire (portando con se molti vantaggi pratici).

Conclusioni

Naturalmente questa mini-guida non ha la presunzione di definirsi completa ma quella di dare la giusta importanza all'ordine e alle metodiche di sviluppo di un foglio di stile CSS (da notare comunque come alcuni consigli valgono per qualsiasi codice).
La vita sarà facile se ce la rendiamo facile...

Daniele Simonin 11 Novembre 2006 alle 12:22 Trackback URI

Scrivi un commento

Tags di formattazione:










* Sono ammessi solo commenti contenenti opinioni, correzioni e ogni forma di supporto al tutorial; è quindi vietato porre quesiti personali.

Leggi i 3 commenti

Ottimo tutorial!
Su una cosa non sono d'accordo al 100%: l'assegnare un nome che indichi la posizione di un oggetto. Spesso capita di creare un elemento di blocco che... rimarrà per sempe lì :) ... o sbaglio?
Inoltre devo ricordarmi delle classi multiple... non ho ancora fatto l'abitudine...

Commento di Andrea@BV 12 Dicembre 2006 alle 18:34

Si è vero in parte...cioè alla fine la sicurezza non esiste mai e rimanendo nel dubbio di solito si sviluppa usando metodi più generici possibili.
E poi anche nel caso in cui un oggetto mantenga per sempre quella posizione, il nome che gli abbiamo associato gli sarà sempre coerente (anche in caso di modifica).
Le classi multiple sono moooooooooolto utili; mesi fa non sapevo della loro esistenza, ma ora che lo so mi facilitano di molto la vita :)

Commento di Daniele Simonin 12 Dicembre 2006 alle 18:43

Ottimo tutorial!
Mi chiedevo proprio se si potessero utilizzare classi multiple.

Commento di Marco 7 Aprile 2008 alle 20:10

Feed

infoPillole (by Wikipedia)

Ultimi commenti

Calendario

Agosto 2008
L M M G V S D
« Lug    
 123
45678910
11121314151617
18192021222324
25262728293031

Archivio

Categorie

Tutorials casuali

Ultime news

Progetti

Alcuni miei lettori

Have a break