我正在研究移动优先框架。该项目有广泛的需求,需要满足不同地点的大量浏览器和设备。
我的主要目标地点之一是印度,那里的浏览器和设备使用趋势与英国或美国有很大不同。
印度浏览器使用情况http://gs.statcounter.com/#all-browser-IN-monthly-201301-201312-bar
英国浏览器使用情况http://gs.statcounter.com/#all-browser-GB-monthly-201301-201312-bar
我需要针对印度地区的浏览器是 Opera、Android、uc 浏览器和诺基亚,但每个浏览器都有自己的小怪癖。因此,设备的范围有所不同
Opera mini - 不支持 rems
Android(chrome之前)v2-v4在rems和ems上都有问题http://www.quirksmode.org/css/units-values/mobile.html
-- 我是否正确地假设更新版本的 Android 预装了 Chrome 和操作系统网络浏览器?
理想情况下,我希望使用 rems,因为它消除了嵌套内容继承其父元素的 em 比例的问题。然而基于研究http://www.quirksmode.org,我需要有一个后退设置。
所以我需要声明一个 px 值。
例如,我可以这样做:
h1 {font-size: 24px; line-height: 30px; margin-bottom: 10px; font-size: 1.846rem; line-height: 2.308rem; margin-bottom: 0.769rem} /* 24px / 30px / 10px */
或者我必须做这样的事情吗?
h1 {font-size: 24px; line-height: 30px; margin-bottom: 10px}
h1 {font-size: 1.846rem; line-height: 2.308rem; margin-bottom: 0.769rem} /* 24px / 30px / 10px */
或者还有其他更好的吗?
我见过一些js的poly-fills,比如https://github.com/chuckcarpenter/REM-unit-polyfill,但可能存在未启用 JavaScript 的情况,因此这不起作用。
此外,我尝试关注性能,因此我希望将请求数量保持在最低限度,并尽可能保持 CSS 干净。
Thanks