我有一个项目,其中IE9是最低兼容性浏览器。这意味着我可以使用rem单位。
根据我对涉及许多开发人员的大型项目的经验,“em”的使用会造成相当混乱。我并不是说它本身就不好,只是随着时间的推移,它似乎“自然地”发生了,当有不同技能的不同人在一个项目上工作时。Dom 元素往往会堆积起来,并且不能很好地与“em”的复合行为一起使用。
在网上看了很多资源后,似乎有很多关于这个问题的货物崇拜。
解决方案1的诱惑:从这个开始(建议在这里css3files.com评论 - David Buell):
解决方案1:
html { font-size: 10px;}
body { font-size: 1.3rem;}
Rem 用于任何与文本相关的内容,而 px 用于其余内容。
但即便如此,我不确定在哪里我真的被限制使用除“rem”之外的另一个单位。我做了一些缩放测试,并没有注意到“rem”和“px”之间的区别。“rem”相对于“px”的优势似乎是“rem”将与主体上带有“%”的 a 大小相关,这允许针对特定断点在一行中更改所有文本大小。
默认文本大小更改似乎是一个问题,因为“px”和“rem”文本保持不变。但我想知道是否有关于此的使用统计信息(这个 SO 用户认为没有人)。如果它真的被使用了,我想我应该把“简单数学”字体大小的定义放在 html 标签上。
解决方案 2:
body { font-size: 0.8125rem;}
这给出了 13px 的大小,浏览器的默认大小为 16px - 用户仍然可以更改默认设置。(从 16 岁开始数学并不难)
我真正不确定的是不同屏幕分辨率的情况,以及不同像素密度的情况(我知道可以在 Windows 上更改)。
总结一下:
- 无需容纳任何低于 IE9 的东西。
- 响应式设计。
- 很好地处理缩放。
- 如果确实使用了,则处理用户文本大小的变化。
- 没有魔法,尽可能准系统(我使用 css 预处理器,但我想避免疯狂使用它)。
我认为许多前端开发人员会调整他们的界面以适应浏览器缩放。但是纯文本缩放的做法是什么?它是一个更隐藏的浏览器功能。有多少开发人员实际测试它并为它编写代码?
我看到 SO 支持它,但它有点突破了一定的规模。
支持响应式网页设计的 IE9+ 界面的正确基础设置是什么?
谢谢
-olivvv