现在移动端都不设置 dpr 是为什么呢? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
caopi
V2EX    问与答

现在移动端都不设置 dpr 是为什么呢?

  •  
  •   caopi 2019-01-16 11:24:09 +08:00 5039 次点击
    这是一个创建于 2462 天前的主题,其中的信息可能已经有所发展或是发生改变。

    以前的移动端适配文章都说根据 dpr 设置 scale 缩放,但是我发现很多 Git 的项目都没有 scale 缩放。

    即使不考虑 1px 问题,但是也不考虑位图像素不够分而产生模糊了吗?

    15 条回复    2019-01-16 14:41:38 +08:00
    Barroco
        1
    Barroco  
       2019-01-16 11:32:04 +08:00
    看到 1px 问题应该是 web 前端吧。
    现在都基本默认 2x 或者 3x,能覆盖多数场景。
    布局靠 vw vh 或者别的方案,靠工具转换。

    git 上都不是大型生产项目,个人、开源项目还是讲究精巧优雅的。
    实际上大厂生产项目里还是对这些做了一些比较脏的兼容。
    caopi
        2
    caopi  
    OP
       2019-01-16 11:36:04 +08:00
    @Barroco 默认 2x 和 3x ?是直接设置 meta 里的 scale 为 2 吗?
    Barroco
        3
    Barroco  
       2019-01-16 11:44:16 +08:00   1
    @caopi
    是图片直接 2x 3x
    其它靠 vw vh 这些动态单位

    说点兼容的
    Android 部分机型不能用 scale,会出现奇怪的问题
    不再建议布局使用 rem,因为会受到机型设置字号导致布局崩掉
    但是文字不能用 vw vh

    所以一般就是设计稿 2x,对着设计稿写 px,然后用 postcss 插件编译
    先 rem,然后覆盖一条 vw,但是 font 相关属性不覆盖,再判断是否要载入 flexiblejs
    caopi
        4
    caopi  
    OP
       2019-01-16 11:47:13 +08:00
    @Barroco 先 rem?是指 rem 设置为 10vw ?
    caopi
        5
    caopi  
    OP
       2019-01-16 11:48:36 +08:00
    @Barroco 就是 HTML 字体设置为 vw 然后,再使用 postcss 转换 px 为 rem 吗?还直接 postcss 转 vw
    Barroco
        6
    Barroco  
       2019-01-16 11:57:02 +08:00
    @caopi 啊? CSS 里全部都是 px,靠 postcss 转

    规则是针对非 font 相关,先 rem,覆盖一条 vw
    font 就不用覆盖了,这样开启中老年字号的用户还能用大字报浏览
    caopi
        7
    caopi  
    OP
       2019-01-16 13:41:30 +08:00
    @Barroco 哦,谢谢。最后再问一下。不使用 scale 的话指的是(width=device-width,initial-scale=1)的设置吧,那么视口还是 1x 的,2x 的设计稿写的 px 通过 postcss 转换出来的宽度还是 device-width 的宽度吗?如果还是 device-width 的话,岂不是还是和物理像素一对多,产生模糊吗
    Barroco
        8
    Barroco  
       2019-01-16 13:46:35 +08:00
    @caopi 会转成 rem 或者 vw 啊,你就把他们当做百分比,scale 是多少都没关系呀
    rabbbit
        9
    rabbbit  
       2019-01-16 13:46:58 +08:00
    设计稿 2x,切出来的图片 2x 3x,写网页的时候按 1x 写,根据 min-device-pixel-ratio 判断载入 2x 还是 3x 的图片
    66beta
        10
    66beta  
       2019-01-16 13:50:55 +08:00 via Android
    楼主去看下大漠的文章
    caopi
        11
    caopi  
    OP
       2019-01-16 13:57:39 +08:00
    @66beta 求地址啊
    caopi
        12
    caopi  
    OP
       2019-01-16 14:01:46 +08:00
    @Barroco 哦,我有点搞混了,是这样吧,这个模糊只需要考虑图片的模糊是吧。我刚才搞错了,还以为整个页面都需要考虑 dpr 模糊的问题
    caopi
        13
    caopi  
    OP
       2019-01-16 14:05:22 +08:00
    @Barroco 我好像搞混了位图像素和 css 像素,就是 css 像素不会因为 dpr 不同产生模糊,而图片的位图像素会产生模糊,所以只要考虑 2x 图和 3 倍图的问题就行了
    66beta
        14
    66beta  
       2019-01-16 14:41:12 +08:00 via Android
    66beta
        15
    66beta  
       2019-01-16 14:41:38 +08:00 via Android
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2577 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 15:30 PVG 23:30 LAX 08:30 JFK 11:30
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86