style: Fix rem computation on the root element.

Bug: 1375930
Reviewed-By: heycam
MozReview-Commit-ID: DK98SS1w5nO
This commit is contained in:
Emilio Cobos Álvarez 2017-06-23 23:06:25 +02:00
parent 946c9aede1
commit 6f57a9b4ba
No known key found for this signature in database
GPG key ID: 056B727BB9C1027C

View file

@ -112,7 +112,6 @@ impl FontRelativeLength {
let reference_font_size = base_size.resolve(context);
let root_font_size = context.device.root_font_size();
match *self {
FontRelativeLength::Em(length) => reference_font_size.scale_by(length),
FontRelativeLength::Ex(length) => {
@ -149,7 +148,19 @@ impl FontRelativeLength {
}
}
}
FontRelativeLength::Rem(length) => root_font_size.scale_by(length)
FontRelativeLength::Rem(length) => {
// https://drafts.csswg.org/css-values/#rem:
//
// When specified on the font-size property of the root
// element, the rem units refer to the propertys initial
// value.
//
if context.is_root_element {
reference_font_size.scale_by(length)
} else {
context.device.root_font_size().scale_by(length)
}
}
}
}
}