移动端rem的问题

发布于 2022-09-01 19:52:24 字数 1426 浏览 8 评论 0

如果width以rem为单位的话,会出现如下问题:

在这个问题的基础上:http://segmentfault.com/q/1010000002442078

当width<480时,按照设定的html font-size应为10px,但是chrome最小只能是12px。如果width=320时,元素的width为30rem,想要的效果是300px,结果为360px,且超出屏幕宽度。

这种问题需要解决吗?因为chrome默认最小为12px,我就怕其他移动端的浏览器也有这种默认情况的话,怕出问题,所以请教一个,这种情况最好的解决方案是啥?

总结:这个问题其实也挺好解决的。只是自己之前没换算对。
假设320px=14px;

html {

font-size: 87.5%;
}
@media only screen and (min-width: 481px){

html {

font-size: 131%!important;

}
}
@media only screen and (min-width: 561px){

html {

font-size: 153%!important;

}
}
@media only screen and (min-width: 641px){

html {

font-size: 175%!important;

}
}
这样的话,不会出现<12px的字体;屏幕比较窄时,元素的宽度也没有问题。
但是font-size=14px,以后计算比较麻烦,如果设为20px,可以方便以后计算。
html {

font-size: 20px;
}
@media only screen and (min-width: 481px){

html {

font-size: 30px!important;

}
}
@media only screen and (min-width: 561px){

html {

font-size: 35px!important;

}
}
@media only screen and (min-width: 641px){

html {

font-size: 40px!important;

}
}
这样才比较好一些,其实的字体计算以20px为基准,元素宽度也是。

总结,为了使浏览器中的字体大小不小于12px,给html设置的初始值大于12px就可以了。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

枕头说它不想醒 2022-09-08 19:52:24

-webkit-transform:scale(0.8125);
css3这个用法可以

北方的韩爷 2022-09-08 19:52:24

你把html的默认字体大小设成20px不就行了,通过和20px比较,计算比例。

iPhone6以下其实图标和字体大小是不需要改变的,宽度大于375px的设备可以使用媒体查询,等比放大界面,也就是重新设置html的字体大小。

当然你也可以使用js,判断屏幕大于375的时候动态计算html字体大小

滿滿的愛 2022-09-08 19:52:24

html设置为100px,然后1px就是0.01rem

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文