Disporre due elementi HTML uno di fianco all’altro è un risultato che si può ottenere in molti modi diversi. Utilizzando display:inline-block il browser interpone tra gli elementi uno spazio quasi mai desiderato. Vediamo come eliminarlo.
Ho scritto il seguente codice HTML:
<section> <div> Foo </div> <div> Bar </div> </section>
E gli ho associato questo codice CSS:
div { display:inline-block; width:100px; background-color:palevioletred; }
Il codice e il relativo risultato sono visibili qui di seguito:
Quello che viene fuori è un odioso spazio tra i due elementi div.
Come faccio ad eliminarlo?
La soluzione
È possibile risolvere questo problema in diversi modi.
Un modo è quello di utilizzare solo codice CSS.
In tal caso bisogna aggiungere il codice font-size: 0 all’elemento genitore e dichiarare un altro font-size sui figli, come mostrato dal seguente codice.
section { font-size: 0; } div { display:inline-block; font-size: 16px; width:100px; background-color:palevioletred; }
Ecco la modifica in tempo reale.
Un’altra soluzione, con solo codice CSS, è quella di spostare il margine del secondo div di 4 pixel a sinistra, come mostrato dal seguente codice.
Un’ultima soluzione a tale problema è quella di modificare il codice HTML facendo in modo di NON separare i due div dal carattere di invio.
Sì, si, proprio così. Scrivendo i due div sulla stessa riga HTML, il problema magicamente non si presenta.
<p> <div>Foo</div><div>Bar</div> </p>
È facile. È semplice. Funziona ovunque. È la soluzione pragmatica. Ed eccolo in azione:
Ti è stato utile questo articolo?
Si? Ottimo!
Allora potrebbe esserlo anche per qualcun altro col tuo stesso problema.
Condividilo! 😉