io possa essere una novità per em
in CSS, ma il seguente esempio sembra strano ...Perché em non comportarsi come definito
Docs dicono che 1em è uguale al font-size. Tutto nel mio esempio è predefinito. Quindi 8em
dovrebbe avere la dimensione di 8 righe di testo, corretto?
div {
background-color: red;
height: 8em;
}
<div>
One<br/>
Two<br/>
Three<br/>
Four<br/>
Five<br/>
Six<br/>
Seven<br/>
Eight
</div>
https://jsfiddle.net/q8vs7r4u/1/
Esistono 8 linee, ma 8 em
copre solo 7 di loro. Sembra che 1em
copre solo 7/8 di una linea, o qualcosa del genere ...
Perché? Che cosa sto facendo di sbagliato?
L'altezza della linea per impostazione predefinita è probabilmente superiore a 1, prova ad impostare l'altezza della linea: 1em –
L'unica cosa che aggiungerei alle risposte sottostanti è di usare un valore senza unità per 'line-height'. In altre parole, invece di 'line-height: 1em', basta usare' line-height: 1'. Per il ragionamento, vedi [** qui **] (https://developer.mozilla.org/en-US/docs/Web/CSS/line-height#Prefer_unitless_numbers_for_line-height_values). –