`
天梯梦
  • 浏览: 13764705 次
  • 性别: Icon_minigender_2
  • 来自: 洛杉矶
社区版块
存档分类
最新评论

Adaptive Images : 为不同的屏幕尺寸提供不同的图片

 
阅读更多

为其提供不同的图片。接下来我们就看一看如何利用该技术实现图片自适应。

 

设置自适应图片

实现 Adaptive Images 解决方案需要 Apache 2、PHP 5.x 和 GD 库,也就是说需要 Web 服务器端编程。首先,在其网站上下载.zip 文件开始配置:

1

 

解 压文件,然后将其中的adaptive-images.php和.htaccess文件拷贝到网站的根目录。如果你网站的根目录下已经有一 个.htaccess文件了,不要覆盖它。参考下载包中的instructions.htm文件看看怎么做合适。接着在网站根目录下创建一个名为 ai-cache 的文件夹。

2

 

用你最喜欢的 FTP 客户端软件设置该文件夹的权限为777。

4

 

然后把如下 JavaScript 代码复制到每个需要自适应图片的网页的头部:

<script>document.cookie=’resolution=’+Math.max(screen.width,screen.height)+'; path=/';/script>

 

如果你没有使用 HTML5(在下一章会改用 HTML5),想让页面通过标准验证,则需要追加 type 属性。所以 script 标签应如下所示:

<script type=”text/javascript”>document.cookie=’resolution=’+Math.maxscreen.width, screen.height)+'; path=/';</script>

 

切记这段 JavaScript 代码要放在页面头部( 好作为第一个脚本),因为它需要在页面加载完成之前,而且要在发出图片请求之前运行。下面是我们的示例网站头部加入该脚本后的结果:

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns=”http://www.w3.org/1999/xhtml”>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″ />
<meta name=”viewport” content=”width=device-width,initial-scale=1.0″ />
<title>And the winner isn’t…</title>
<script type=”text/javascript”>document.cookie=’resolution=’+Math. max(screen.width,screen.height)+'; path=/';</script> <link href=”css/main.css” rel=”stylesheet” type=”text/css” /> 
</head>

 

把背景图片放在其他地方

过去,我通常将所有图片都放在一个名如 images 或 img 的文件夹中,不论是用做 CSS 背景的图片,还是通过标签插入的图片。但是在使用自适应图片方案时,建议将那些用于 CSS 的背景图片(或者那些你不想被缩放的图片)放在另一个目录。自适应图片方案默认为此创建的目录是assets。如果你不想缩放某张图片,把它丢进这个文件 夹即可。如果你想将这类图片存在其他(或更多)文件夹中,则需要像下面这样修改.htaccess文件。

<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
# Adaptive-Images ——————————————————–
RewriteCond %{REQUEST_URI} !assets
RewriteCond %{REQUEST_URI} !bkg

# Send any GIF, JPG, or PNG request that IS NOT stored inside one of the above directories
# to adaptive-images.php so we can select appropriately sized versions
RewriteRule \.(?:jpe?g|gif|png)$ adaptive-images.php
# END Adaptive-Images —————————————————–
</IfModule>

 
上面的代码设定了存在assets或bkg文件夹中的图片不会被缩放。反之,如果你想显式声明只允许某个特定文件夹中的图片被缩放,那么将设置规则中的感 叹号去掉即可。例如,如果我只想让网站根目录下名为andthewinnerisnt的文件夹中的图片被缩放,则修改后的代码如下所示:

<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On

# Adaptive-Images —————————————————— 2
RewriteCond %{REQUEST_URI} andthewinnerisnt

# Send any GIF, JPG, or PNG request that IS NOT stored inside one of the above directories
# to adaptive-images.php so we can select appropriately sized versions RewriteRule \.(?:jpe?g|gif|png)$ adaptive-images.php
# END Adaptive-Images ————————————————–
</IfModule>

 
这就是要设置的全部内容。检查是否能正确生成自适应图片的 简单办法,就是在网页中插入一张大图片,然后用手机访问这个页面。之后用 FTP 软件检查ai-cache文件夹中的内容,你应该可以看到一堆文件,以及使用屏幕尺寸断点命名的文件夹,如480(如下图):

5
Adaptive Images 方案不仅限于静态网站,它也可以被用于内容管理系统,而且在 JavaScript 被禁用的情况下依然有效。自适应图片方案给我们提供了一种方法,可以根据屏幕尺寸提供完全不同的图片,为那些没有必要下载全尺寸大图的设备节省带宽。

 

原文:http://www.aaini.com/html/1093.html

 

Adaptive Images检测访问者屏幕的尺寸,自动创建、缓存并重新缩放内嵌在HTML页面中的图片,以适应显示设备屏幕的大小。无需把变化标记出来。Adaptive Image和流媒体图片技术联合使用,适用于响应式设计。

 

Adaptive Images为什么要那样做?现在越来愈多的用户使用屏幕更小、速度更慢和带宽更低的设备访问网站。在那样的设备上访问以桌面为中心的网站,图片加载会越 来越慢,引起UI延迟,花费用户更多的带宽和金钱。Adaptive Images就是为了解决上述问题。

 

项目地址:http://adaptive-images.com/

分享到:
评论

相关推荐

    adaptive-images.1.5.2.zip

    "adaptive-images.1.5.2.zip" 是一个包含实现响应式图片技术的资源包,主要目的是优化网页上的图片展示,使其能根据用户设备的屏幕尺寸自动调整大小,从而节省带宽,提高页面加载速度,并提供更好的用户体验。...

    ios上下黑边解决办法

    4. Adaptive Images:确保应用中的所有图片都有多个版本,以适应不同的屏幕像素密度(@1x, @2x, @3x),并使用适当的命名约定,如"image.png", "image@2x.png", 和 "image@3x.png"。 5. Storyboards与XIBs:使用...

    多分辨率屏幕自适应

    随着移动设备和桌面电脑屏幕尺寸的多样化,设计和开发能够适应不同分辨率的界面变得至关重要。这不仅关乎用户体验,也是确保应用或网站功能正常运行的基础。让我们深入探讨这个话题,了解其背后的原理和实现方法。 ...

    手机访问网页自适应网页及图片高度

    标题中的“手机访问网页自适应网页及图片高度”是指在移动设备上浏览网页时,网页内容(包括图片)能够根据设备屏幕尺寸自动调整布局和高度,以提供良好的用户体验。这通常涉及到响应式网页设计(Responsive Web ...

    响应式html模板

    4. 自适应图片(Adaptive Images):图片可以通过设置max-width为100%来实现自适应,使其不会超出其父元素的宽度,同时保持原始比例。另外,还可以使用srcset和sizes属性来提供不同分辨率的图片,根据设备的像素密度...

    支持移动端电脑端TAB选项卡切换.zip

    3. **自适应图片(Adaptive Images)**:图片大小和分辨率会根据设备的屏幕尺寸进行调整,避免在小屏幕上显示过大的图像。 4. **灵活的媒体(Flexible Media)**:视频和音频内容也应适应不同设备的屏幕尺寸,保持...

    html5响应式布局

    HTML5响应式布局是现代网页设计的核心技术之一,它使得网站能够根据用户设备的不同特性,如屏幕尺寸、分辨率和方向,自动调整布局、图片及多媒体元素的大小和位置,从而提供一致且良好的用户体验。响应式设计的目标...

    Adaptive

    在IT行业中,Adaptive通常指的是适应性或者自适应技术,特别是在网页设计和开发领域,它是一种使网站能够根据用户设备的屏幕尺寸、方向和分辨率自动调整布局和内容显示的技术。Adaptive与Responsive Web Design...

    jquery图片缩小 图片缩小实例

    可以结合媒体查询(media queries)和自适应图片插件(如Adaptive Images或Picturefill)来实现。 7. **图片预加载**:为了避免图片加载延迟导致的用户体验问题,可以使用jQuery预加载图片,确保用户在浏览时图片能...

    响应式前端网页模板

    响应式前端网页模板是现代网页设计中的一个重要概念,它允许网页根据访问设备的不同屏幕尺寸自动调整布局、内容和功能,从而提供优秀的用户体验。这种技术在移动互联网时代尤其关键,因为用户可能通过桌面电脑、平板...

    PictureDome

    4. **响应式设计**:考虑到不同设备的屏幕尺寸和分辨率,图片处理还需要考虑响应式设计。这可能涉及生成不同尺寸的图片版本,以适应移动设备和桌面电脑。例如,使用 Adaptive Images 或类似解决方案,可以根据用户...

    web 移动布局,微信场景

    它旨在提供一个适应不同屏幕尺寸、分辨率和方向的用户界面,确保内容在各种设备上都能清晰、有效地呈现。这通常涉及响应式设计(Responsive Design)、流式布局(Fluid Grid)、自适应图片(Adaptive Images)等技术...

    兰途官网-响应式页面模板

    3. **弹性图片(Flexible Images)**:图片的宽度设置为百分比,高度自适应,这样在不同尺寸的屏幕上,图片能保持正确的比例。 4. **自适应内容(Adaptive Content)**:除了布局和图像,响应式设计还涉及到内容的...

    自适应图片大小特效代码

    通过媒体查询,可以为不同屏幕尺寸定义不同的图片尺寸。 3. **响应式图片(Picture Element)**:HTML5引入了`&lt;picture&gt;`元素,允许我们根据不同的设备条件提供不同的图片源,实现更精细的控制。 4. **srcset与...

    响应式布局

    3. **弹性图片(Flexible Images)**:图片宽度设置为百分比,确保图片在不同尺寸的屏幕上都能自适应,不会溢出容器或被挤压变形。 4. **自适应内容(Adaptive Content)**:根据设备的特性,隐藏或显示某些元素,...

    响应式WEB资源库

    响应式Web设计是一种让网页在不同设备上,如桌面电脑、平板电脑和手机,都能自动适应屏幕尺寸并提供良好用户体验的技术方法。这个“响应式Web资源库”特别针对Android建模,意味着它包含了一系列工具、框架和指南,...

    响应式网页布局 流式网络布局

    响应式网页布局确保了网页在不同设备和屏幕尺寸上都能呈现出良好的用户体验,而流式网络布局则是实现这一目标的关键手段。 响应式网页布局(Responsive Web Design,RWD)是一种设计方法,其核心理念是“根据用户...

    ALiBaiXiu(响应式布局).zip

    在响应式布局中,设计师和开发者使用一系列技术来确保网页内容可以自适应不同的屏幕尺寸和方向。这通常涉及到以下几个核心概念: 1. **媒体查询(Media Queries)**:CSS3引入了媒体查询,让我们可以根据设备的特定...

    H37_HTML手机电脑网站_网页源码移动端前端_H5模板_自适应响应式源码.zip

    这个源码集成了移动端前端开发和HTML5技术,具有自适应和响应式设计的特点,能够根据用户设备的不同屏幕尺寸提供优化的浏览体验。 首先,我们来深入理解一下这些关键词所代表的知识点: 1. HTML:超文本标记语言...

    Thinkphp响应式净水器净水设备双语模板

    响应式设计是一种网页设计方法,使得网站在不同设备上(如桌面、平板、手机)都能自动适应屏幕尺寸,提供良好的用户体验。主要技术包括: 1. **媒体查询(Media Queries)**:CSS3中的关键特性,用于根据设备的特定...

Global site tag (gtag.js) - Google Analytics