在CSS中,字體大小有許多種單位可以使用。em和rem是兩種常見的單位,它們有什么不同呢?
p{ font-size: 1.2em; }
em是相對單位,它是相對于當(dāng)前元素的字體大小來計(jì)算的。例如,如果一個(gè)元素的字體大小是16像素,那么1em就相當(dāng)于16像素。所以如果這個(gè)元素中的某個(gè)元素設(shè)置了字體大小為1.2em,那么計(jì)算出來的實(shí)際大小就是1.2 * 16 = 19.2像素。
p{ font-size: 16px; } span{ font-size: 1.2em; }
rem是相對于根元素(通常指html元素)的字體大小來計(jì)算的。所以如果根元素的字體大小是16像素,那么1rem就相當(dāng)于16像素。這樣可以確保整個(gè)頁面中使用的字體大小都是相對于根元素的字體大小來計(jì)算的,保證了頁面的一致性。例如,如果我們在根元素中設(shè)置字體大小為16像素,那么
html{ font-size: 16px; }
在某個(gè)子元素中設(shè)置字體大小為1.2rem,那么它的實(shí)際大小就是1.2 * 16 = 19.2像素。和em不同的是,rem不受父元素的影響,所以它更加方便用于大型項(xiàng)目。