移动端rem适配问题

发布于 2022-09-04 15:58:19 字数 249 浏览 14 评论 0

如果在移动项目中使用像weui这种样式库怎么结合rem布局?
比如想用淘宝的flexible方案布局,会改变dpr

[data-dpr="2"] div {
    font-size: 24px;
}

[data-dpr="3"] div {
    font-size: 36px;
}

weui里面字体就会出现异常,请问怎么解决这种问题?
或者说在用第三方样式库/组件库的时候不用把px改成rem?

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

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

发布评论

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

评论(4

趴在窗边数星星i 2022-09-11 15:58:19

clipboard.png

这个是lib.flexible的文档说明,你可以去看看。

短暂陪伴 2022-09-11 15:58:19

如果你不想改变dpr,完全可以在meta标签里面指定dpr的值,这样就不会出现你说的问题了

镜花水月 2022-09-11 15:58:19

解决移动端适配字体问题

就我所知讲讲

一般文字尺寸

考虑到字体的点阵信息,一般文字尺寸多会采用 16px 20px 24px等值,

若以rem指定文字尺寸,会产生诸如21px19px这样的值,会导致字形难看,毛刺,甚至黑块,故用px单位进行设置,然后根据设备的分辨率设置不同的font-size,因移动端大部分的设备独立像素不会相差太大,故可根据不同的dpr进行设置。

[data-dpr = "2"] div {

font-size:24px;

}

[data-dpr="3"] div{

font-size:36px;

}
/* 或者使用媒体查询的方法设置 */

标题类文字

可能也有要求随屏幕缩放,且考虑到这类文字一般都比较大,超过30px的话,也可以用rem设置字体。

需注意

  1. 使用淘宝的flexible方案布局并不会自动把你的设置的单位px转换成rem,当然用插件可以实现。

  2. 手淘方案会动态生成initial-scale,maximum-scale,minimum值,布局宽高使用rem,然后html标签设置font-size,利用fone-size来控制rem宽高,并且用设备像素比来设置dpr来适配不同移动设备的屏幕密度显示
    flexible.js源码

命硬 2022-09-11 15:58:19

第三方UI库的 px 转换可以结合 webpack/gulp 来做自动化处理,插件有 postcss-pxtorem

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