Retina 显示屏的网页图片兼容方案

感谢 Apple,带来了 Retina 屏幕的革命,让我们可以在电子显示屏上享受到印刷级的分辨率。得益于分辨率的提升,网页中的文字、Flash 和 SVG 内容显示得比原来更加精细,但网页中的大量使用的位图图片却变得异常模糊,存在严重的分辨率适配问题。2010年6月,iPhone4 上市之后,网页图片适配 Retina 显示屏的问题就已出现,经过几年发展,配备 Retina 屏的电子产品越来越多,如今 Apple 又将 Retina 技术应用到了 Macbook Pro 上,网页图片在 Retina 显示屏上的适配问题已经变得迫在眉睫。

接下来为大家分享几种适配方案,供大家参考。

1. <img> 标签引用的图片

我们以一张 300*200px 的照片为例:

1
<img src="./photo.jpg" style="width:300px;height:200px;" />

如果想让这张图片在 Retina 屏幕下达到应有的显示分辨率,只需使用该照片的源文件导出一张清晰的 600*400px 的图片,我们将其命名为 photo@2x.jpg,替换现有的图片即可:

1
<img src="./photo@2x.jpg" style="width:300px;height:200px;" />

换成 @2X 图片,在 Retina 屏幕下的显示就清晰多了,可谓细节毕现。不过在普通屏幕下,图片的显示需要经过浏览器的压缩,一些老版本浏览器如 IE6、7 会显示得非常失真,同时大尺寸的图片会占用更多的带宽,增加页面加载的时间,降低用户体验。通过 JS 的辅助,可以让图片在普通屏幕和 Retina 屏幕下做到自动适配:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<img class="photo" src="./photo.jpg" style="width:300px;height:200px;" />
 
<script type="text/javascript">
$(document).ready(function () {
    if (window.devicePixelRatio > 1) {
        var images = $("img.photo");
        images.each(function(i) {
            var x1 = $(this).attr('src');
            var x2 = x1.replace(/(.*)(\.\w+)/, "$1@2x$2");
            $(this).attr('src', x2);
        });
    }
});
</script>

Retina.js 提供了更加完善的解决方案,自动匹配屏幕分辨率的同时,还可以检测服务器上是否存有当前图片的 @2X 版本,以决定是否替换。
Read more about "Retina 显示屏的网页图片兼容方案" …

行走尼泊尔:帕坦、返程

行程的最后一天,我们还有很多尼泊尔的人文风光没有领略,同行的张张和小鱼却已经体力不支,选择呆在泰米尔的一家冰激凌店休息,我和老婆则决定到帕坦走一走。

帕坦(Patan)

马拉王朝时代在加德满都谷地曾经有过3座王国,帕坦就是其中之一的首都。

行走尼泊尔:帕坦杜巴广场
帕坦的别名是“艺术之城”,城中随处可见艺术品般的建筑,由于时间关系,没有多拍照片。 Read more about "行走尼泊尔:帕坦、返程" …

行走尼泊尔:博卡拉

博卡拉(Pokhara)位于以喜马拉雅山脉为端头的溪谷伸展开来的绿色谷地中,海拔仅有800米左右,街道上随处可见榕树、香蕉树等亚热带植物。仰头望去是海拔8000多米的喜马拉雅山峰,这种海拔高度差在世界上独一无二。

行走尼泊尔:博卡拉鱼尾峰
喜马拉雅山脉南麓的安纳布尔纳群峰中,有一座海拔6993米的神秘山峰,山势峭拔,形似鱼尾,被称为“鱼尾峰”(Fish Tail , or Machhapuchhre),这座山峰在当地人心目中是一座神山,因政府禁止攀登,至今仍是一座处女峰。鱼尾峰离博卡拉比较近,所以看上去比其他山峰更高更醒目。 Read more about "行走尼泊尔:博卡拉" …

行走尼泊尔:北京-拉萨-樟木-加都

经过几个月的期待,尼泊尔的行程终于开始了。

为了节省交通成本,顺带体验一下西藏到尼泊尔的高海拔落差,我们选择经拉萨陆路进入尼泊尔,返程经广州飞回北京,这已经是一条经典线路。

北京

行走尼泊尔:北京T3航站楼

为了赶飞机,不得不起大早,太阳还没出来就到了机场,不过由于时值十一黄金周,排队领登机牌的人甚是壮观。

不知是何原因,涉藏航线的安检异常严格,行李中的电脑、相机、洗漱用品必须拿出来单独过检,这还不算啥,我鞋上连接鞋带的金属部分出发了感应器,居然要求我把鞋脱下来塞进安检机里单独过检…… 小鱼带了一瓶撕掉标签的沐浴露,安检人员表示无法鉴定成分,给无情地扣留了。。。 Read more about "行走尼泊尔:北京-拉萨-樟木-加都" …

Page 2 of 47 :1[2]345678910>|