有没人聊一下Retina 下 网页如何制作?

2012-08-17 00:15:53 +08:00
 tension
目前找到个办法

就是把所有的图片放大一倍
以前100x100 现在200x200 然后利用 background-size: 100px 100px; 来缩放

但是图片大一倍,也就意味着 存储空间大了一倍,当然占的流量也多了,

还有一个就是 LOGO神马的 用AI制作,然后 不变大小,输出SVG格式

比如 http://www.elinkhost.com/logo.svg

这样的 跟普通图片一样调用即可!
6793 次点击
所在节点    CSS
34 条回复
Livid
2012-08-17 00:20:23 +08:00
Logo 的这个思路不错,感谢分享。
Sivan
2012-08-17 00:26:00 +08:00
先用 media query 判断是否为视网膜屏幕,然后给元素设置等比高清的背景图片以及 background-size 设置到 cover 或 contain 就可以了。

基本就是设计师像 iOS 程序那样出一套 @2x 素材,然后再在原 css 末尾添加上 media query 代码就 OK~
tension
2012-08-17 00:27:09 +08:00
@Sivan media query 只能用webkit... Firefox 怎么办!!!!
Sivan
2012-08-17 00:28:37 +08:00
<img /> 兼容视网膜途径比较多,基本都需要借助 js 而且代码会变的有点累赘,也有通过 CSS 替换的。

总体来说,网站自身的部分兼容视网膜倒还不是太麻烦。用户上传图片、文章图片等就蛋疼了。
Sivan
2012-08-17 00:29:09 +08:00
@tension 都支持的啊,ie 也支持(低版本用 js)。
tension
2012-08-17 00:29:27 +08:00
@Livid 用AI储存为 SVG 设置如下,我设置了好多次,才输出对的

heymi
2012-08-17 00:31:34 +08:00
怎么说呢,SVG输出的效果不是很好,差很多。
tension
2012-08-17 00:33:41 +08:00
SVG:

PNG 缩小
tension
2012-08-17 00:35:27 +08:00
图片放大 会发现 SVG的边缘 还是有锯齿的...

而PNG缩小到1倍效果后 明显没有
tension
2012-08-17 12:59:05 +08:00
看来V2EX 前端还是不够多!
keakon
2012-08-17 14:51:00 +08:00
直接设置图片的长宽为原始的一半也行:
http://www.keakon.net/article/94200

可以在加载图片时用JS判断devicePixelRatio,然后找到retina图片的路径(例如加上@2x),在图片下载完成后缩小长宽并替换低分辨率图片。
tension
2012-08-17 14:54:46 +08:00
@keakon 你那个 适合 <img src=**** alt="" />

不适合 CSS啊!
Mak
2012-08-17 15:02:02 +08:00
Los
2012-08-17 15:22:13 +08:00
@tension 一个更残酷的情况,Retina版本在存储空间跟流量消耗上应该是非Retina版本的4倍而不是1倍,图片长和宽都增加为原来的2倍,图像面积就是原来的4倍,所以大小应该是之前的4倍的(图片压缩算法没研究过,不知道大图跟小图的压缩率差别大不大,但大小图存储空间比应该接近4倍左右)。
tension
2012-08-17 15:30:22 +08:00
@Mak 嗷嗷写的..不错..
他也说了 还是图片x2是最好的方案!
keakon
2012-08-17 15:54:23 +08:00
@tension 最重要的一点是css没有js灵活。你不可能为每张图片(含未来新增的)写一个css规则,但是一个js就能处理所有图片。
tension
2012-08-17 16:00:40 +08:00
@keakon 是的...

所以我现在的方案是直接把所有图片放大一倍,然后缩小
yundanfengqing
2012-08-17 16:45:23 +08:00
弱弱的说一句 尺寸不变 提高分辨率行不行的?
ghbjy1128
2012-08-17 17:04:16 +08:00
用户基数太低,无视之。
rongbin
2012-08-17 17:07:42 +08:00
@tension 请问,你的系统所使用的字体有变更过吗? 这也太清晰了吧。 同样10.8,我的不是retina,用的13 pro 101,你的看起来太舒服了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/45352

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX