2. CSS: l’aspetto delle pagine web

Tecnologie e Progettazione di Sistemi Informatici e di Telecomunicazioni

Obiettivo: comprendere come il CSS controlla la presentazione degli elementi HTML, leggere e scrivere regole di stile, utilizzare i selettori più comuni e distinguere contenuto, padding, bordo e margine.

4. CSS: il linguaggio della presentazione

Nella lezione precedente abbiamo costruito la struttura di una pagina con HTML5. Titoli, paragrafi e sezioni sono presenti, ma il browser li mostra inizialmente con un aspetto essenziale. Per decidere colori, caratteri, spazi e disposizione degli elementi utilizziamo CSS, acronimo di Cascading Style Sheets, cioè “fogli di stile a cascata”.

La distinzione è importante: HTML descrive il contenuto e il suo significato; CSS stabilisce come quel contenuto viene visualizzato. Lo stesso documento HTML può assumere aspetti molto diversi modificando soltanto il foglio di stile.

4.1 Come si scrive una regola CSS

Una regola CSS inizia con un selettore, che individua gli elementi a cui applicare lo stile. Tra parentesi graffe si scrivono una o più dichiarazioni: ogni dichiarazione associa una proprietà al relativo valore.

h1 {
color: blue;
font-size: 32px;
}

In questo esempio h1 è il selettore: la regola riguarda tutti i titoli di primo livello. La proprietà color rende blu il testo, mentre font-size imposta una dimensione di 32 pixel. I due punti separano proprietà e valore; il punto e virgola conclude ciascuna dichiarazione. Le parentesi graffe delimitano la regola.

Il modo più ordinato per lavorare è inserire le regole in un file separato, per esempio stile.css, e collegarlo al documento HTML nella sezione <head>:

<link rel=”stylesheet” href=”stile.css”>

Quando il browser carica la pagina, legge il documento HTML e applica le regole del foglio di stile collegato.

 

 

 

 

4.2 I selettori principali

I selettori consentono di decidere con precisione quali elementi modificare. Alcuni agiscono su tutti gli elementi di un certo tipo; altri individuano elementi che condividono una classe oppure un identificatore specifico.

Tipo Esempio Effetto
Elemento p { color: navy; } Tutti i paragrafi <p>
Classe .evidenziato { color: red; } Elementi con class=”evidenziato”
ID #saluto { font-size: 24px; } Elemento con id=”saluto”
Pseudo-classe button:hover { color: orange; } Pulsante mentre il puntatore è sopra

Una classe può essere attribuita a più elementi, mentre il valore di id deve essere unico nel documento. Per questo una classe è adatta a stili riutilizzabili; un ID serve a identificare un elemento preciso. La pseudo-classe :hover applica la regola soltanto quando il puntatore si trova sull’elemento.

<p class=”evidenziato”>Messaggio importante</p>
<p id=”saluto”>Benvenuti!</p>

4.3 Le proprietà CSS più utilizzate

Una proprietà rappresenta una caratteristica grafica. Per iniziare sono sufficienti poche proprietà, che possono essere combinate per ottenere una pagina leggibile e ordinata.

Proprietà Funzione Esempio
color Colore del testo color: red;
background-color Colore dello sfondo background-color: #f0f4f8;
font-family Famiglia di caratteri font-family: Verdana;
font-size Dimensione del testo font-size: 18px;
text-align Allineamento del testo text-align: center;
margin Spazio esterno margin: 20px;
padding Spazio interno padding: 10px;
border Bordo dell’elemento border: 2px solid black;
border-radius Arrotondamento degli angoli border-radius: 10px;

I colori possono essere indicati con nomi come red e blue oppure con codici esadecimali, per esempio #f0f4f8. L’unità px esprime una misura in pixel CSS. Le proprietà margin e padding, apparentemente simili, agiscono invece in due zone diverse: lo vediamo nel box model.

4.4 Il box model

Il browser rappresenta ogni elemento come una scatola rettangolare. Dall’interno verso l’esterno si distinguono quattro zone: il contenuto, il padding, il border e il margin. Comprendere queste aree permette di gestire correttamente distanze e ingombri.

Contenuto (content): È il testo, l’immagine o l’altro contenuto dell’elemento.

Padding: È lo spazio tra contenuto e bordo; fa parte dell’area interna dell’elemento.

Border: È la linea che circonda contenuto e padding.

Margin: È lo spazio esterno al bordo che separa l’elemento dagli altri.

section {
background-color: white;
padding: 20px;
border: 2px solid #1f4e79;
margin: 20px;
border-radius: 10px;
}

In questa regola il testo della sezione resta separato dal bordo grazie a 20 px di padding; il margine di 20 px crea invece distanza rispetto agli elementi vicini. Il bordo è spesso 2 px e gli angoli sono arrotondati.

Nota tecnica: con il valore predefinito box-sizing: content-box, larghezza e altezza dichiarate riguardano soltanto il contenuto; padding e bordo si aggiungono alle dimensioni complessive. È un dettaglio utile quando si inizia a progettare l’impaginazione.

Attività guidata in laboratorio

Riprendi la pagina HTML di presentazione realizzata nella prima lezione. Crea nella stessa cartella il file stile.css e collegalo con <link>. Inserisci quindi le seguenti regole e osserva il risultato aggiornando il browser.

body { font-family: Verdana, sans-serif; background-color: #f0f4f8; }
header { background-color: #1f4e79; color: white; text-align: center; padding: 20px; }
section { background-color: white; margin: 20px; padding: 15px; border-radius: 10px; }
.evidenziato { color: #c00000; }

Verifica: modifica il colore dell’intestazione, aumenta il padding di una sezione e applica la classe evidenziato a due paragrafi diversi. Spiega a voce quale modifica interessa il contenuto HTML e quale riguarda esclusivamente la sua presentazione.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *