2013-03-30 29 views
0

考虑以下CSS类的定义,从worpdress采取二12主题:CSS:margin属性同时使用PX和REM

.entry-header { 
    margin-bottom: 24px; 
    margin-bottom: 1.714285714rem; 
} 

为什么用rem单位px是定义两次margin-bottom,一次和一次?浏览器会选择哪个单位?

+0

rem并非所有浏览器都支持 –

回答

3

我认为是因为rem不被所有浏览器支持。

查看caniuse以查看浏览器支持的详细信息。

因此,他们将其定义为px用于较旧的版本,对于支持它的版本则将其定义为rem

+0

为什么'REM'选择'px',如果浏览器支持这两种格式呢? –

+1

@AdamMatan因为它是在之后定义的。 –

+0

由于rem是在px –

0

并非所有的浏览器都支持rem单元 - 我从来没有听说过它!不支持它的浏览器将使用px值。

0

简单的话...

Px的用于在所有的浏览器,而不是IE修复。由于IE无法使用浏览器功能更改大小。

Em整个无法在IE中调整文本大小一直是一个沮丧。为了解决这个问题,我们可以使用em单位。

CSS3引入了一些名为“rem”的新单元,它代表“root em”。 em单位是相对于父级的字体大小,这会导致混合问题。 rem单位相对于根或html元素。

+0

rem与em不一样 - 并且在Internet Explorer 9中向上支持rem。 – pwdst

+0

是的你是对的... –

1

有两种字体大小的声明,因为开发人员更喜欢浏览器使用'rem'单位,但是如果浏览器不支持rem,它将回退到使用标准'px'单位。

不支持'rem'单位的旧浏览器将忽略该声明。

较新的/当前的浏览器将使用'级联'并使用最后声明的任何度量单位。在这种情况下,使用'rem'的尺寸。

相关问题