CSS中的em和rem是兩種不同的長度單位。它們具有一些共同的特點(diǎn),但在某些方面又存在差異。
em是相對于元素的字體大小來計(jì)算的單位。例如,如果某個(gè)元素的字體大小為16像素,那么指定該元素內(nèi)文本的字體大小為1.5em將會(huì)使得文本的字體大小為16 * 1.5 = 24像素。
.example { font-size: 16px; } .example p { font-size: 1.5em; /*相對于父元素的字體大小*/ }
rem則是相對于根元素(html元素)的字體大小來計(jì)算的單位。在大多數(shù)瀏覽器中,根元素的默認(rèn)字體大小是16像素。因此,如果根元素中設(shè)置了字體大小為20像素,那么指定某個(gè)元素文本的字體大小為1rem將會(huì)使得文本字體大小為20像素。
html { font-size: 20px; /* 根元素字體大小 */ } .example p { font-size: 1rem; /* 相對于根元素字體大小 */ }
總的來說,em適合用于那些需要相對于父元素來控制字體大小的地方,例如標(biāo)題和段落。而rem適合于整個(gè)頁面的布局控制,因?yàn)樗粫?huì)受到嵌套元素的影響。