考虑以下css类定义,取自worpdress二十二主题:
.entry-header {
margin-bottom: 24px;
margin-bottom: 1.714285714rem;
}
为什么margin-bottom
定义了两次,一次是px
,一次是rem
?浏览器会选择哪个单位?
答案 0 :(得分:4)
答案 1 :(得分:1)
有两种字体大小的声明,因为开发人员更喜欢浏览器使用'rem'单位,但如果浏览器不支持rem,它将回退到使用标准的'px'单位。
不支持'rem'单元的旧浏览器将忽略声明。
较新/当前的浏览器将使用“级联”并使用最后声明的任何测量单位。在这种情况下,使用'rem'进行大小调整。
答案 2 :(得分:0)
并非所有浏览器都支持rem
单元 - 直到现在我才听说过它!不支持它的浏览器将使用px
值。
答案 3 :(得分:0)
rem是CSS3中的一个新单元,它定义了根元素的字体大小(通常是文档的HTML元素)。由于它是一个新单元,所有浏览器都不支持,请参阅http://caniuse.com/#feat=rem,因此px值作为后备提供。如果支持rem,则使用该值,否则使用px值。
有关CSS长度单位的详细信息,请参阅https://developer.mozilla.org/en-US/docs/CSS/length。
答案 4 :(得分:0)
简单的话......
Px 用于修复所有浏览器而不是IE。因为IE无法使用浏览器功能更改大小。
Em 整体无法在IE中重新调整文本大小一直是令人沮丧的。为了解决这个问题,我们可以使用em单位。
CSS3引入了一些名为“rem”的新单元,它代表“root em”。 em单位是相对于父级的字体大小,这会导致复合问题。 rem单元相对于root或html元素。