logo Dove iniziare Linguaggi Aiuto Blog
Home Dove iniziare Linguaggi Aiuto e Supporto Info e Blog

I margini degli elementi in CSS

I margini sono una parte fondamentale del layout in CSS, in quanto controllano lo spazio esterno intorno agli elementi HTML. Capire come funzionano i margini è utile per creare layout ben strutturati e gradevoli.

In questa lezione, vediamo come funziona la proprietà margin.

Impostare i margini

Il margine è lo spazio esterno tra un elemento HTML e gli elementi circostanti. È trasparente e non ha colore, ma è utile per posizionare e separare gli elementi sulla pagina.

Le proprietà dei margini

La proprietà base è margin, ma non esiste solo quella: con CSS puoi usare anche le proprietà per impostare margini per singolo lato. Ecco l'elenco:

  • margin: sintassi abbreviata per impostare i margini su tutti e quattro i lati (top, right, bottom, left) in una singola dichiarazione.
  • margin-top: imposta il margine superiore dell'elemento.
  • margin-right: imposta il margine destro dell'elemento.
  • margin-bottom: imposta il margine inferiore dell'elemento.
  • margin-left: imposta il margine sinistro dell'elemento.

Tutte queste proprietà accettano valori assoluti (come px) e relativi (come %), che abbiamo visto nella lezione delle unità di misura, e il valore auto (che vedremo nel prossimo paragrafo).

p {
  margin-top: 50px;
  margin-bottom: 40px;
  margin-right: 60px;
  margin-left: 80px;
}

Il valore auto

Il valore auto permette di centrare gli elementi orizzontalmente all'interno dell'elemento che li contiene.

Ad esempio, vogliamo centrare un'immagine all'interno del <body> della pagina. Ecco come possiamo fare:

<img src="https://biadets.com/language/css/img/parrot.jpg">

<style>
img {
  display: block;
  margin: auto;
}
</style>

Nell'esempio, uso l'attributo display:block per far diventare l'immagine di tipo block invece che inline. Abbiamo parlato della differenza tra i due nella lezione sugli elementi block e inline di HTML.

La proprietà margin

La proprietà margin in CSS è utilizzata per impostare i margini esterni di un elemento. Questa proprietà può accettare uno, due, tre o quattro valori, ognuno dei quali specifica i margini in modo diverso. Vediamo come funziona con esempi per ogni caso.

Un valore

Quando si specifica un solo valore per la proprietà margin, questo valore viene applicato a tutti e quattro i lati dell'elemento: top, right, bottom e left.

/* Applica un margine di 20px su tutti i lati */
.elemento {
  margin: 20px;
}

Due valori

Quando si specificano due valori per la proprietà margin, il primo valore viene applicato ai margini superiore e inferiore (top e bottom), mentre il secondo valore viene applicato ai margini destro e sinistro (right e left).

/* Applica un margine di 20px su top e bottom e 10px su right e left */
.elemento {
  margin: 20px 10px;
}

Tre valori

Quando si specificano tre valori per la proprietà margin, il primo valore viene applicato al margine superiore (top), il secondo valore viene applicato ai margini destro e sinistro (right e left), e il terzo valore viene applicato al margine inferiore (bottom).

/* Applica un margine di 20px su top, 10px su right e left, e 5px su bottom */
.elemento {
  margin: 20px 10px 5px;
}

Quattro valori

Quando si specificano quattro valori per la proprietà margin, questi valori vengono applicati ai margini in senso orario, iniziando dal margine superiore (top).

/* Applica un margine di 20px su top, 10px su right, 5px su bottom, e 15px su left */
.elemento {
  margin: 20px 10px 5px 15px;
}

Prova!Completa gli spazi vuoti con il testo appropriato.
/* Specifica un margine sul lato superiore dell'elemento di 10px */
: 10px;

/* Specifica un margine sul lato sinistro dell'elemento di 20px */
: 20px;

Prova!Scegli l'opzione corretta tra quelle elencate.
/* Specifica un margine di 10px in alto, 15px in basso e 5px a destra e sinistra */
margin: _________________;