I would like to convert my new website from pixels to ems. My question is, should I also apply ems to my text line-height property?
Assuming that “converting to ems” means using the em
unit for font-size
, then you should set line-height
in a manner that also adapts to the font size. The two properties are closely related, and if you set one of them in em
and the other (e.g.) in px
or pt
, then the page will break if the font size is changed. So it would work against the very idea of “using ems” to use essentially different units for essentially connected properties.
For example, if you set font-size: 1.5em
and line-height: 18px
, then things will depend on the font size of the element’s parent and may go very wrong if that size is much smaller or much larger than expected.
Whether you use the em
unit or a pure number is a different issue. Using just a number, as in line-height: 1.2
, is primarily equivalent to using the em
unit, as in line-height: 1.2em
. But there is the difference that when line-height
is inherited, it is the pure number that gets inherited, not the computed value.
For example, if an inner element has twice the font size of its parent, then the inherited value 1.2
means that 1.2 times its own font size is used, which is OK. But if the parent had line-height: 1.2em
, then the child would inherit a value that 1.2 times the parent’s font size – which is much smaller than its own font size.
for more explanation end examples see line-height @ Mozilla Developer Network