网页图片自响应式网页怎么设置

响应式网页图片库设计的基本规则和技巧-马海祥博客
新型SEO思维就是从一个全新的层次上提升seo优化的水平,达到网络信息最佳化的展示效果!
> 响应式网页图片库设计的基本规则和技巧
响应式网页图片库设计的基本规则和技巧
时间:&&&文章来源:马海祥博客&&&访问次数:
响应式设计无疑是当前网页设计领域当中,不可忽略的必要组成部分,而响应式网页中的图片显示又是老生常谈的问题,许多争论集中在响应式网站的图片应当怎么展示,继续延伸开来,那么响应式网站中的图片库应当如何设计呢?
相比于单个图片,图库的展示无疑更加复杂,牵涉到的变量更多,所以实现起来也更加麻烦费神,接下来,我们来看看如果要设计响应式的图片库,有哪些值得注意的基本规则和技巧。
1、轮播幻灯片:尽量隐藏导航
在桌面端上导航的存在可能没什么,但是在移动端上查看的时候,导航还是尽量隐藏起来,需要的时候再显现。
而诸如左右切换的按钮和标明浏览位置的圆点,最好是在光标移动上去之后再显示,这样的设计不仅可以避免用户分心,而且能避免内容和导航元素之间的冲突,降低整体设计的混乱感(具体可查看马海祥博客《》的相关介绍)。
2、避免使用大量肖像类图片
如果你设计的图片库是类似网格布局的话,你可能会尽量挑选和横向的图片,或者方形的图像,这样的设计在兼容桌面端设计的同时,还可以让用户在小屏幕上更好地查看。
人像类的图片在手机上适合纵向屏幕上浏览,如果横过来的话,图片会显得特别小,浏览会相当不方便。
横向是最佳的,如果不行的话,使用方形的 图片会是很好的兼容性方案,一个响应式的图片库的设计需要考虑多种因素,请务必牢记用户的不同浏览场景。
3、在移动端上支持手势操作
触摸屏上使用收拾操作几乎是用户的本能了,所以,在设计响应式图片库的时候,滑动操作等手势操作赋予用户更多的权力,让体验更加逼真。
在移动设备上使用箭头导航太过于乏味、老旧,手势交互更加自然也更符合真实的交互体验(具体可查看马海祥博客《》的相关介绍)。
4、在移动端上禁用lightbox效果
Lightbox效果大概是桌面端网页上最常见的图片浏览模式,图片以弹出框的形式呈现出来,能随着屏幕尺寸和鼠标操作来缩放。
在产品展示的页面当中,这种图片浏览模式的使用尤其广泛和频繁,但是在移动端上的时候,它可能会引起大量的用户体验上的问题:盖住其他的交互控件、无法退出、尺寸不合适等等。
5、让导航元素低调不招摇
如果你使用幻灯片的形式来展现大量图片组成的图片库的时候,导航就显得尤为重要了,用户肯定不想在等待加载中耗费太多的时间,他们依然会按照自己的速度点击,翻页,进入,退出,保持,等等。
所以,当你要使用导航元素的时候,一定要设计在让他们觉得不碍事的地方,不要让导航的小圆点盖在文本或者链接上,并且避免复杂的控制方式,这样会分散用户注意力,并让整个页面的设计都趋于复杂,可点击跳转的导航小圆点能让用户快速跳转到他们想要去的地方,提升效率,降低无谓的消耗,当然,不要弄的太复杂,平衡最重要!
6、不要让图片和视频混淆
通常情况下,不同类型的媒体混到一起没啥问题,但是用户肯定不想翻看图片的时候,突然发现下一张图片变成了视频,突如其来的声音和额外的流量消耗绝对是他们不愿意碰到的事情。
将视频和图片分割开来,让他们知道接下来的会是什么东西,不要让意外发生。
7、确保图片显示尺寸不要超过原始图片的最大宽度
这一点很重要,尽管很基础,但是依然需要强调一下,图片尽量不要去填充超过本身尺寸的空间,这样会让图片表现出象素化的失真效果(具体可查看马海祥博客《》的相关介绍)。
值得注意的是,很多情况下图片在移动端完全填满某个区块没问题,但是在桌面端的时候,最大也不能超过本身宽度,这似乎并不难,但是依然有许多响应式页面,当你拉宽浏览器界面的时候,会有图片超出本身尺寸来显示。
8、图片缩放
如果你的图库中的图片要牵涉到图片缩放,那么尽量让图片去缩小,而不是放大,甚至最好是为图片设定精确的尺寸。
通常,图片缩放会使用百分比来控制它的大小变化,如果你个属性被设定为按照百分比来缩放,那么其他的相关属性最好设置为自动,比如将图片宽度设定为50%,那么高度缩放应当设定为自动。
9、避免使用图片标题
使用图片标题或者其他的附加文字会为你自己和用户增加大量的问题,第一个问题是,它在移动端界面上会强制显现出来,在移动端有限的界面空间上,它可能会和图片挤压到一起,带来混乱的用户体验。
另外一个问题是,它可能会限制你的文字使用,你得想明白它怎么断句,占据多大空间,在桌面端显示和在移动端显示分别是什么样,怎么才正常,太多的变量控制起来会相当麻烦。
图片各不相同,而文字总会莫名其妙地覆盖到某些不该覆盖到的地方,图片和文字的对比度总会随 着不同的图片而变化,这也是麻烦的地方之一。
马海祥博客点评:
小心无大错,今天说的规则并不复杂,但是当你开始为图片库进行响应式设计的时候,这些鸡零狗碎的问题开始显现,在意想不到的地方影响整个设计和体验,以用户为重心,小心绕过这些坑,会让你的响应式网页更优秀,也更快搞定。
本文为原创文章,如想转载,请注明原文网址摘自于http://www.mahaixiang.cn/wzsj/1473.html,注明出处;否则,禁止转载;谢谢配合!
您可能还会对以下这些文章感兴趣!
从某种意义上说,《爱情公寓》绝对是一款具有典型意义的文化产品――尽管成本不高,没有大制作与大明星,但……
相互炮轰如今已成为互联网企业的一种营销模式,也是很多企业及个人崛起的重要手段,在2014年,有人靠打架一……
腾讯从马化腾等几个人搞的小软件,到今天的QQ帝国,期间经历了太多的人和事,今天的腾讯被很多人称为中国互……
从2010年开始谷歌的算法调整就非常的频繁,熊猫、企鹅、蜂鸟算法……
404页面就是当用户访问某网站时,点击了错误的链接时,所返回的……
众所周知,网站优化是随着搜索引擎算法的升级不断的探索和寻求效……
在SEO行业内,人们谈论最多的话题之一就是要对方阐述一下百度和……
网站上非目标关键词但也可以带来搜索流量的关键词,称为长尾关键……
白帽seo 白帽SEO就是采用公正的手法,正确的SEO的思维,合理优化……
本月热点文章19:21 提问
求助webapp响应式布局 背景图片和普通图片如何自适应?
求助webapp响应式布局 背景图片和普通图片如何自适应?
用CSS 如何自适应?因为图片高度和宽度有固定比例 如果就设置width和height为100%
即使图片高清 但碰到不同尺寸设备 图片自动占据全屏 会改变图片比例尺 会影响吧?请问这个问题CSS 怎么解决?谢谢
按赞数排序
IMG加载的图片width设置为100%,高度会按照width的值自动等比率缩放
背景图片用background-size 属性来控制缩放
background:#00ff00 url(img.jpg) no-
background-size:60% 80%;
-moz-background-size:60% 80%;
-webkit-background-size:60% 80%;
-o-background-size:60% 80%;
那我想问各位大神一个问题,既然图片做不了所以屏幕都适应,那你们通常在做手机端的时候只用一套图片还是两套图片,还是更多套图片来实现呢?如果是多套那是以iPhone、iPad两种来做判断条件吗?想问下是要根据屏幕比例还是根据屏幕像素决定调用哪一套图呢?各位是怎么实现的呢?帮帮忙,谢谢了!
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐用CSS3制作有响应的图片
我的图书馆
用CSS3制作有响应的图片
(点击上方蓝字,可快速关注我们)
近年来,移动设备的数量呈现爆炸式增长,越来越多的网络用户涌入了移动技术的海洋。在实践中人们发现,作为一座与用户沟通的新桥梁,移动设备易于创造新颖的用户交互体验。因此,在移动设备发展的过程中,让自己的网站能够在各式各样的屏幕中完美的运行成了大势所趋。
由于移动互联网的兴起,互联网公司正在解决如何构建面向所有类型用户的网站的问题。当前的解决方案是依靠响应式网页设计。
响应式网页设计概述
响应式网页设计是一种用于构建在各种设备上优雅运行的网站的设计方案。该设计的宗旨是使网站能够兼容所有的设备,即不受到屏幕大小、分辨率、系统平台、显示方向等因素的影响。使得用户即便身处于纷繁多样的设备之中也能获取到满意的体验。
响应式网页设计可以借助srcset、HTML等多种技术实现,这些技术的差别在于复杂度和浏览器支持上。不过,如果你只想以简易的方式实现它,那么CSS3就是你的不二之选。在本教程中,我将向你展示如何使用CSS3实现响应式设计。教程的内容通俗易懂,定能让你学会如何在移动设备中打造更好的用户体验。
创建一张简单的响应式图片
让我们先从一个简单的基础实例开始:
首先,我们需要建立一套样式规则(regular)以实现响应式效果。同时,创建一个div元素作为container。
&div class=”container”&
&img src=”picture.jpg” width=”950″ height=”640″ /&
div.container {
width: 95%;
max-width: 950
margin: 0 /* to center the container */
width: 100%;
我们可以看到,container的width属性设为95%,因此你还可以为它设置左边距和右边距。此外,将max-width属性设为960px,以保证在大屏上container不会变得太宽。
值得注意的是,包含在container中的img元素的width属性被设为100%,这意味着无论窗口(viewport)大小怎样变化,它的宽度始终和container一致。将元素的height属性设为auto,以使图片一直保持原始比例。
需要指出的是,即使你为img元素height和width属性分配固定值(见HTML代码),它依旧具有响应式行为。
制作多列响应式图片
上例代码仅适用于单个图片,但在实际应用中,我们往往需要并排显示多列图片。这该怎么办呢?别担心,让我来教你。制作多列响应式图片其实非常简单,你只需将每个img元素的width属性调低,并设置display属性为inline-block即可。双列和三列布局是两种不同的布局方案,因此我们需要分开讨论:
双列响应式图片布局
为了构建双列响应式布局,我们需要先把container中的元素的width属性设为48%(50%亦可)。之所以让width的值小于50%,是为了让img元素能设置两侧的margin。
&div class=”container”&
&img src=”picture1.jpg” width=”950″ height=”630″ /&
&img src=”picture2.jpg” width=”950″ height=”630″ /&
width: 48%;
display: inline-
三列响应式布局
同理,将元素width属性设为32%即可实现三列响应式布局。
width: 48%;
display: inline-
.three-columns {
width: 32%;
display: inline-
制作带有条件式断点的响应式图片
为基本的设备类型、产品或操作系统设定断点以获得更好的体验是一个不错的选择。条件式断点(Conditional breakpoints)可以应用到列的显示中,这样每列的宽度会随着图片显示尺寸的缩小而缩小。为实现这样的功能,我们将用到media queries。
在下面的例子中,我们将让图片在智能手机中单列显示,在平板中双列显示,而在更大的设备中四列显示。
&div class=”container”&
&img src=”picture1.jpg” width=”950″ height=”630″ /&
&img src=”picture2.jpg” width=”950″ height=”630″ /&
&img src=”picture3.jpg” width=”950″ height=”630″ /&
&img src=”picture4.jpg” width=”950″ height=”630″ /&
/* to be rendered on small devices (e.g. smartphones) */
max-width: 100%;
display: inline-
/* on medium devices (e.g. tablets) */
@media (min-width: 420px) {
max-width: 48%;
/* For devices with larger screens (e.g. desktops) */
@media (min-width: 760px) {
max-width: 24%;
制作全宽(FULL-WIDTH)响应式图片
只要将container的max-width属性(当前为950px)设为100%,我们便可以创建一个填充整个设备屏幕的响应式图片。
.container {
width: 100%;
width: 100%;
本文的内容到此结束。衷心地希望它能在你构建满足移动用户需求的响应式网站中有所帮助。
原文出处:designwebkit.com
译文出处:伯乐在线 - ElvisKang
链接:http://web.jobbole.com/82318/
喜欢该文的人也喜欢在 SegmentFault,学习技能、解决问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。
问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
这个页面上的图片是作为div的background-image,div设置了几个断点,前面几个断点的响应式比较简单,div有固定宽高,然后屏幕不断缩小到手机大小后,div就是宽度跟随屏幕,高度和宽度一致,问题:这个div高度如何和宽度保持一致的?图片是作为背景图片,而不是作为内容,所以div不能依靠图片作为内容支撑宽高,div也几乎没有内容,是什么支持它自适应的呢?我是css和js新手,看源代码怎么也看不出是怎么实现的,求高人解答,谢谢!
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
直接给你个例子看- -跟你给的那个链接的网站完全一样的原理和写法,图片容器的父容器的宽度是33.333...%,高度是before用padding-top:100%撑开的,100%就是直接根据【上级宽度】的数值计算的,所以这样只能撑出个正方形,需要长方形改变padding-top:50%这样使用上一级50%的宽度作为高度就行了- -
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
background-size:cover这是一条C3的属性,可以自适应背景图.
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
可以在楼上的基础上再加一句background-position-x:
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
看了源代码,感觉不是背景图把div撑大的,而是在加了伪对象选择符::before,然后通过设置内填充将div本身也撑大的,然后就能显示背景图了
大概是这样的
div::before{
content: "";
padding-bottom: 36.111%;
而楼上所说的 background-size:cover 只是让图片把整个div填充满,并不能撑大div
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
.container-video 的样式中有min-height:400px
::before 设置了内边距, 两个共同作用的结果
同步到新浪微博
分享到微博?
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:
在 SegmentFault,学习技能、解决问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。响应式 Web 设计 - 图片
使用 width 属性
如果 width 属性设置为 100%,图片会根据上下范围实现响应式功能:
&&& width: 100%;&&& height:
注意在以上实例中,图片会比它的原始图片大。我们可以使用 max-width 属性很好的解决这个问题。
使用 max-width 属性
如果 max-width 属性设置为 100%, 图片永远不会大于其原始大小:
&&& max-width: 100%;&&& height:
网页中添加图片
&&& width: 100%;&&& height:
背景图片背景图片可以响应调整大小或缩放。
以下是三个不同的方法:
1. 如果 background-size 属性设置为 "contain", 背景图片将按比例自适应内容区域。图片保持其比例不变:
这是 CSS 代码:
div {&&& width: 100%;&&& height: 400&&&
background-image: url('img_flowers.jpg');&&&
background-repeat: no-&&&
background-size:&&& border: 1}
2. 如果 background-size 属性设置为 "100% 100%" ,背景图片将延展覆盖整个区域:
这是 CSS 代码:
div {&&& width: 100%;&&& height: 400&&&
background-image: url('img_flowers.jpg');&&&
background-size: 100% 100%;&&& border: 1}
3. 如果 background-size 属性设置为 "cover",则会把背景图像扩展至足够大,以使背景图像完全覆盖背景区域。注意该属性保持了图片的比例因此
背景图像的某些部分无法显示在背景定位区域中。
这是 CSS 代码:
div {&&& width: 100%;&&& height: 400&&&
background-image: url('img_flowers.jpg');&&& background-size:&&&
border: 1}
不同设备显示不同图片
大尺寸图片可以显示在大屏幕上,但在小屏幕上确不能很好显示。我们没有必要在小屏幕上去加载大图片,这样很影响加载速度。所以我们可以使用媒体查询,根据不同的设备显示不同的图片。
以下大图片和小图片将显示在不同设备上:
/* For width smaller than 400px: */body {&&& background-image:
url('img_smallflower.jpg'); }/*
For width 400px and larger: */@media only screen and (min-width: 400px)
{&&& body { &&&&&&&
background-image: url('img_flowers.jpg'); &&& }}
你可以使用媒体查询的 min-device-width 替代 min-width 属性,它将检测的是设备宽度而不是浏览器宽度。浏览器大小重置时,图片大小不会改变。
/* 设备小于 400px: */body {&&& background-image:
url('img_smallflower.jpg'); }/*
设备大于 400px (也等于): */@media only screen and (min-device-width: 400px)
{&&& body { &&&&&&&
background-image: url('img_flowers.jpg'); &&& }}
HTML5 &picture& 元素
HTML5 的 &picture& 元素可以设置多张图片。
浏览器支持
&picture& 元素类似于 &video& 和
&audio& 元素。可以设备不同的资源,第一个设置的资源为首选使用的:
&picture&& &source srcset="img_smallflower.jpg" media="(max-width:
400px)"&& &source srcset="img_flowers.jpg"&& &img
src="img_flowers.jpg" alt="Flowers"&&/picture&
srcset 属性的必须的,定义了图片资源。
media 属性是可选的,可以在媒体查询的
查看详情。
对于不支持 &picture& 元素的浏览器你也可以定义 &img& 元素来替代。
感谢您的支持,我会继续努力的!
扫码打赏,你说多少就多少
记住登录状态
重复输入密码

我要回帖

更多关于 响应式网页设计尺寸 的文章

 

随机推荐