响应式布局(PC与手机访问的兼容性)
- 格式:docx
- 大小:28.75 KB
- 文档页数:7
前端开发中的移动端适配与响应式布局移动互联网的广泛普及,让移动端成为了互联网产品开发中不可或缺的一环。
而在移动端开发中,如何实现适配和响应式布局一直是前端开发人员关注的问题。
本文将从移动端适配和响应式布局两个方面进行探讨。
1. 移动端适配移动端适配的意义在于,根据不同的设备屏幕大小、分辨率等差异,使网站或应用在各类移动设备上都能够很好的呈现,同时又保证用户的交互体验。
在移动端适配中,目前采用的常用方式有以下两种:1.1 媒体查询媒体查询是指根据不同的设备屏幕大小,设置不同的CSS样式。
例如:在iPhone 6上的样式设置为:@media screen and (min-width: 375px) and (max-width: 667px){.header {font-size: 15px;}}这样就可以针对iPhone 6以上的屏幕进行适配,达到更好的视觉效果。
1.2 viewportviewport是指浏览器渲染页面的区域,通常情况下是设备屏幕的可视区域。
在移动端,我们可以通过以下代码设置viewport:<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">其中,width=device-width表示页面的宽度等于设备的宽度,initial-scale=1.0表示页面的初始缩放比例,maximum-scale=1.0表示页面的最大缩放比例,user-scalable=no表示禁止用户缩放页面。
2. 响应式布局响应式布局是指不同设备屏幕下,页面能够自适应地进行布局。
通过调整CSS样式和JavaScript脚本,实现不同设备的适配和布局。
通常情况下,采用响应式布局的方法有以下几种:2.1 Flexbox布局Flexbox布局是一种弹性盒子布局,非常适合移动端的适配。
网页设计的响应式布局与移动端适配随着移动设备的发展与普及,人们越来越多地通过手机和平板电脑访问互联网。
这为网页设计师带来了一个新挑战——如何实现网页的响应式布局与移动端适配?响应式布局是指网站能够根据不同的浏览器、屏幕分辨率和设备类型,自动调整布局和排版设计,以达到最佳的显示效果。
而移动端适配则是指为手机和平板电脑等移动设备量身定制的网页设计,以便用户能够更加方便地浏览网站内容。
那么,如何实现网页响应式布局与移动端适配呢?以下是一些应该注意的要点。
1. 弹性布局在响应式布局中,弹性布局是比较常见的一种方式。
通过使用百分比和em,可以让网页元素按比例扩大或缩小。
这种布局方式特别适合应对各种不同尺寸的屏幕和设备。
2. 媒体查询媒体查询是web设计中用来针对不同屏幕尺寸设置不同样式的技术。
通过媒体查询,可以实现对不同设备上的网页元素进行不同的样式设计,从而达到更好的显示效果。
3. 图片优化在网页设计中,图片占用了很大一部分带宽。
为了在移动设备上提供更快的网页访问速度,应该优化网页中的图片。
这可以通过压缩图片、使用WebP格式、LazyLoad图片等方式来实现。
4. 流畅的过渡效果移动设备由于硬件环境等多方面原因,往往比桌面设备慢一些。
因此,在移动设备上浏览网页时,流畅的过渡效果就显得尤为重要。
简单的动画效果、巧妙的加载方式等等都可以让用户感受到更好的体验。
5. 快速的加载速度移动设备上的网页访问速度是非常敏感的。
由于移动网络环境的不稳定性,网页要在短时间内加载好,才能给用户更好的使用体验。
为了达到这个目的,可以采用CDN加速、压缩文件、使用Icon Font等方式来提高网页加载速度。
总之,网页设计的响应式布局与移动端适配是随着移动设备的发展而变得越来越重要。
通过应用上述技术和方法,可以让网页被更多的用户所接受和使用。
希望这些技术和方法可以对你的网页设计工作有所帮助。
响应式布局与移动端适配实践近年来,随着移动设备的普及,越来越多的用户开始使用手机和平板电脑来浏览网页。
为了提供更好的用户体验,响应式布局和移动端适配成为了网页设计和开发中不可忽视的一部分。
本文将介绍响应式布局的概念和原理,并分享一些实践经验。
一、响应式布局概述响应式布局,顾名思义,是指网页能够根据不同设备的屏幕尺寸和分辨率进行自动适配和调整,以呈现最佳的视觉效果和用户体验。
与传统的固定布局相比,响应式布局不仅可以适应不同的设备,也能够适应不同的屏幕方向,包括横向和纵向。
二、响应式布局的原理响应式布局的实现原理主要基于CSS媒体查询(Media Queries)和流体网格布局(Fluid Grid System)。
通过使用媒体查询,可以检测设备的特性,如屏幕宽度和像素密度,然后根据不同的条件加载不同的CSS样式,从而实现对页面的适配。
流体网格布局则通过相对单位(如百分比)来定义页面元素的宽度,使其能够在不同屏幕尺寸下自动调整布局。
三、移动端适配实践1. 使用Viewport元标签在移动端适配中,Viewport元标签是必不可少的。
Viewport元标签用于控制网页在移动设备上的显示方式,包括页面缩放、布局视口和视觉视口等参数。
通过设置合适的Viewport元标签,可以使网页在移动设备上显示更加清晰和合理。
2. 弹性布局与流式布局在移动设备上,屏幕尺寸的限制使得固定布局的效果大打折扣。
因此,我们可以使用弹性布局和流式布局来代替固定布局。
弹性布局(Flexbox)是CSS3中新增的布局方式,可以通过设置容器和子元素的属性来实现灵活的布局。
流式布局则是使用相对单位和百分比来定义元素的宽度和高度,使其能够自适应屏幕尺寸的变化。
3. 图片适配处理移动设备上的高分辨率屏幕要求图片显示得更加清晰,但高分辨率图片的加载会降低网页的加载速度。
为了解决这个问题,可以使用图片适配处理技术,如利用CSS media queries加载不同尺寸的图片,或者使用图片压缩和懒加载等技术来优化图片的加载和显示效果。
手机网站设计如何使用响应式布局来自适应PC端与移动端杨洋 | 创建时间:2014年12月22日 13:28 | 浏览: 1308 | 评论: 0标签:手机网站设计随着3G的普及,越来越多的人使用手机上网。
手机的屏幕比较小,宽度通常在600像素以下;PC的屏幕宽度,一般都在1000像素以上(目前主流宽度是1366×768),有的还达到了2000像素。
同样的内容,要在大小迥异的屏幕上,都呈现出满意的效果,并不是一件容易的事。
于是,网页设计师不得不面对一个难题:如何才能在不同大小的设备上呈现同样的网页?下面让木易设计来告诉大家。
很多网站的解决方法,是为不同的设备提供不同的网页,比如专门提供一个mobile版本,或者iPhone / iPad版本。
这样做固然保证了效果,但是比较麻烦,同时要维护好几个版本,而且如果一个网站有多个portal(入口),会大大增加架构设计的复杂度。
于是,很早就有人设想,能不能"一次设计,普遍适用",让同一张网页自动适应不同大小的屏幕,根据屏幕宽度,自动调整布局(layout)?一、"自适应网页设计"的概念2010年,Ethan Marcotte提出了"自适应网页设计"(Responsive Web Design)这个名词,指可以自动识别屏幕宽度、并做出相应调整的网页设计。
他制作了一个范例,里面是《福尔摩斯历险记》六个主人公的头像。
如果屏幕宽度大于1300像素,则6张图片并排在一行。
如果屏幕宽度在600像素到1300像素之间,则6张图片分成两行。
如果屏幕宽度在400像素到600像素之间,则导航栏移到网页头部。
如果屏幕宽度在400像素以下,则6张图片分成三行。
二、允许网页宽度自动调整"自适应网页设计"到底是怎么做到的?其实并不难。
首先,在网页代码的头部,加入一行viewport元标签。
viewport是网页默认的宽度和高度,上面这行代码的意思是,网页宽度默认等于屏幕宽度(width=device-width),原始缩放比例(initial-scale=1)为1.0,即网页初始大小占屏幕面积的100%。
前端开发中的移动端适配方法在前端开发中,移动端适配是一个非常重要的问题。
由于不同的手机分辨率、屏幕尺寸和浏览器特性,导致同一份页面在不同的移动设备上显示效果不尽相同。
为了解决这个问题,前端开发人员需要采取一定的方法和技术来适配不同的移动设备。
1. 响应式布局(Responsive Layout)响应式布局是一种能够自动适应不同设备屏幕的设计模式。
通过使用CSS的媒体查询(Media Query)属性,可以根据屏幕尺寸、浏览器窗口大小等参数来调整页面的布局和样式。
一般情况下,响应式布局会使用相对单位(如百分比)来设置元素的尺寸和位置,以确保页面在不同设备上显示一致。
2. 弹性布局(Flexible Layout)弹性布局也是一种能够适应不同设备屏幕的设计模式,但与响应式布局不同的是,弹性布局更加注重元素的缩放和伸缩能力。
通过使用CSS的flexbox属性,可以设置元素的缩放比例和排序方式,以适应不同尺寸和布局组合的设备。
3. 动态字体大小(Dynamic Font Size)移动设备的屏幕尺寸相对较小,而文字又是移动应用中重要的内容之一、为了确保文字在不同设备上都能清晰可读,可以采用动态字体大小的方式来适配。
通过使用CSS的rem单位,可以根据屏幕尺寸动态调整字体的大小,使之在不同设备上都具有最佳阅读体验。
4. 图片自适应(Image Adaptation)在移动设备上加载大尺寸的图片会影响页面加载速度和用户体验,同时也会消耗用户的流量。
为了解决这个问题,可以使用CSS的max-width属性来限制图片的最大宽度,并设置height属性为auto,从而实现图片的自适应效果。
此外,还可以通过使用CSS的background-size属性来调整背景图片的大小,以适应不同设备的屏幕尺寸。
5. 视口(Viewport)设置除了上述方法,还有一些其他的移动端适配技术,如使用CSS的媒体查询属性来根据设备像素比(device pixel ratio)调整样式,使用CSS的transform属性来实现元素的旋转、缩放和位移,使用CSS的em单位来设置元素的尺寸等等。
将网站转换为移动设备友好的方式随着移动互联网的广泛应用,越来越多的人使用手机或平板电脑来上网。
移动设备以其方便性和高效性逐渐取代了传统的电脑,成为现代人必不可少的工具。
因此,将网站转换为移动设备友好的方式成为了一种必然趋势。
1、改变页面布局PC端网站一般采用较大的分辨率和具有复杂的页面结构,造成了在不同尺寸的移动设备上无法适配的问题。
所以在将网站转换为移动设备友好的方式上,首要的是改变页面布局,使其在移动设备上也能够正常浏览。
这可以通过将网站分成响应式布局和适配性布局两种方式解决。
2、响应式布局响应式布局是指根据不同屏幕尺寸和设备(如PC、手机、平板)自动调整页面的布局和内容大小来适应屏幕大小。
这种布局为不同移动设备下的用户提供了更好的用户体验,无需在移动设备和PC端之间,来回切换。
3、适配布局适配布局是指设计两个以及以上的版本,通过识别不同的设备分配合适的版本进行展示,确保不同设备下页面都有最佳的显示效果。
通过适配布局来将PC端的网站转换成移动设备端的,可以更好地展示网站的内容和形式,从而补偿响应式布局的不足。
4、压缩页面元素移动设备上的流量是宝贵的,所以将网站转换为移动设备友好的方式之一是通过压缩页面元素来减少页面加载时间,提高页面的加载速度和用户的阅读体验。
5、减少广告和图片广告和图片的加载速度较慢,而且在移动设备上还会占用较大的空间,使加载时间更长,影响用户体验。
因此,在将网站转换为移动设备友好的方式上,可以通过减少广告和图片的数量和大小来提高页面的加载速度和用户阅读体验。
6、提供简洁明了的导航移动设备的屏幕相对较小,而且用户常常在路上或其他位置使用移动设备,导致其操作时间和浏览深度有限。
因此,在将网站转换为移动设备友好的方式上,设计简洁、明了的导航,能够在极短的时间内,为用户提供所需的重要信息和功能,提高用户体验。
7、优化网站速度不良的网站速度会给用户使用体验带来负面影响,并会对搜索引擎排名造成影响。
如何用响应式设计让你的网站适应不同设备响应式设计(Responsive Design)是一种针对不同设备屏幕尺寸和分辨率进行优化的设计方法,旨在提供更好的用户体验和可访问性。
在当今移动互联网的时代,越来越多的用户使用各种设备访问网站,因此,采用响应式设计来适应不同设备的需求已成为网站设计的重要课题。
本文将介绍如何利用响应式设计原则来打造一个适应不同设备的网站。
一、兼容性考虑响应式设计的首要考虑是设计适配不同设备的布局和界面。
为了实现这一目标,我们需要确保网站在各种设备上的显示效果一致,并且能够适应不同的屏幕尺寸和分辨率。
这需要通过使用弹性布局、媒体查询和流式布局等技术来实现。
1. 弹性布局:弹性布局是响应式设计中的一种关键技术,它可以使网站的布局随着屏幕尺寸的变化而自动调整。
通过使用百分比而不是固定像素来定义元素的宽度和高度,可以使网站在不同设备上呈现出更好的适应性和可伸缩性。
2. 媒体查询:媒体查询是一种CSS3的特性,它可以根据不同的媒体类型和属性来应用不同的样式规则。
我们可以利用媒体查询来检测不同设备的屏幕尺寸和特性,并为其提供相应的样式定义,从而实现网站在不同设备上的适配。
3. 流式布局:流式布局是一种根据屏幕尺寸自动调整网页元素位置和大小的布局方式。
通过使用百分比来定义元素的宽度和高度,使其能够与屏幕尺寸等比例缩放,从而在不同设备上呈现出更好的排版效果。
二、内容精简在设计响应式网站时,需要考虑到不同设备的屏幕大小和分辨率限制。
为了在小屏幕设备上提供更好的用户体验,我们应该精简并优化网站的内容,使其更符合移动设备的特点和用户的浏览习惯。
1. 图片优化:图片是网站中常见的内容元素,它们通常占据大量的空间。
在响应式设计中,我们可以使用图片压缩和懒加载的技术来减小图片的尺寸和加载时间,从而提升网站性能。
2. 文字排版:在小屏幕设备上,文字的可读性非常重要。
我们应该选择合适的字体大小、行高和字间距来提高文字的可读性,并确保文字在不同设备上的显示效果一致。
网页设计的响应式布局与适配性随着移动设备和平板电脑的普及,越来越多的人选择通过手机和平板电脑来访问网站。
因此,网页设计师需要确保网站能够在各种屏幕大小和分辨率下兼容并良好地展示。
这就是响应式设计的重要性,响应式设计是指网页能够根据不同屏幕和设备大小自适应地调整大小和布局,以提供更好的用户体验。
这种设计方式需要兼容多个设备并且可以通过移动端、桌面端等多种平台进行访问。
响应式设计不仅是一种趋势和标准,而且是一种必需,因为大多数用户会选择使用移动设备浏览互联网,而且这种趋势正在增长。
而为了实现响应式设计,需要首先进行适配性设计。
适配性设计是指根据设备、分辨率和浏览器进行设计,以确保网站在各种设备和环境下都能够正确显示和运行。
适配性设计可以通过简洁的布局、清晰的字体、易用的导航和特定的颜色和字体组合来实现。
在设计这一方面,我们需要考虑以下几点:1. 布局是设计中最重要的部分之一,它决定了网站内容和各个模块的放置方式。
响应式布局可以使网站在各种大小的设备上自适应地展示。
具体方法是通过使用流式布局、弹性图像和静态宽度来实现。
2. 图片是网页中最重要的媒体元素之一,因此在对其进行设计时,必须确保图像可以根据需要自适应地缩放。
应使用矢量图像,以保证它们在各种分辨率下的清晰度,并且可以自适应地调整比例。
而对于文化交流、宣传变化快等图片,使用图片库即可。
从而大大节省了图片下载的时间和流量。
3. 字体在设计中必须选择合适的字体和字号,以确保它们在各种设备上的清晰度和可读性。
同时,字体应该在不同的设备上看起来协调一致。
4. 导航是网站中最重要的组成部分之一,因为它指导用户在网站中的导航和浏览。
在响应式设计中,必须确保导航简单易用,以便用户可以轻松地定位所需信息。
总的来说,响应式设计和适配性设计对于网页设计师来说都是非常重要的。
只有考虑到用户通过不同的设备、分辨率和浏览器访问网站,才能确保用户获得良好的用户体验。
Web前端开发中的响应式布局与移动端适配技巧实现随着移动设备的普及,越来越多的用户在使用手机和平板电脑访问网站。
因此,网站的响应式布局和移动端适配变得尤为重要。
响应式布局和移动端适配技巧可以使网站能够在不同设备上提供良好的用户体验。
1.响应式布局:响应式布局是指通过媒体查询和流式布局技术,使网站能自适应不同屏幕尺寸和设备类型。
下面是一些实现响应式布局的技巧:-使用媒体查询:媒体查询是CSS3中的一项功能,用于根据不同设备的特性来应用不同的样式。
通过媒体查询,可以设置不同的布局,字体大小和图像尺寸,以适应不同的屏幕尺寸。
-弹性布局:使用百分比和弹性单位来设置元素的宽度和高度,使其能够根据屏幕尺寸自动调整大小。
弹性布局可以让页面在不同设备上呈现一致的外观。
-图像优化:对于响应式布局,图像的大小是一个关键问题。
使用适当的图像格式和压缩算法可以减少图像的文件大小,提高页面加载速度。
此外,可以使用srcset属性和picture元素来提供不同尺寸的图像,以适应不同设备的屏幕密度。
-视口设置:视口是移动设备上可见的区域。
通过设置viewport 元标记,可以控制网页在移动设备上显示的方式。
例如,可以设置视口的宽度为设备宽度,禁用缩放功能,以使网页能够适应移动设备的屏幕。
2.移动端适配技巧:移动端适配是指根据移动设备的特性来调整网页的呈现方式。
下面是一些实现移动端适配的技巧:-响应式图片:为了在不同设备上显示良好的图片效果,可以使用srcset属性和picture元素来提供不同尺寸和不同分辨率的图片。
这样可以根据设备的屏幕尺寸和分辨率,选择合适的图片来显示。
-触摸事件:移动设备使用触摸屏来交互。
通过使用触摸事件,可以使页面具有良好的触摸响应。
例如,可以使用touchstart事件来检测用户触摸屏幕的瞬间,使用touchmove事件来检测用户在屏幕上滑动的过程,使用touchend事件来检测用户离开屏幕的瞬间。
响应式布局是什么如何实现响应式布局实现响应式布局的主要方法有以下几种:1. 使用媒体查询(Media Queries):媒体查询是CSS3中新增的一个技术,可以根据不同的媒体类型、属性和取值来应用不同的样式规则。
通过使用媒体查询,我们可以根据设备的屏幕尺寸和分辨率来调整页面的样式和布局。
例如,可以使用媒体查询来设置不同屏幕宽度下的页面布局,或者根据设备的像素密度来加载适当大小的图片。
2. 弹性网格布局(Fluid Grid Layout):弹性网格布局使用相对单位(如百分比)代替固定单位(如像素)来定义网页中的布局和元素大小。
通过这种方式,页面上的元素可以根据设备屏幕的大小进行扩展或缩小,并保持它们之间的比例关系。
弹性网格布局可以使用CSS的 flexbox 属性来实现,也可以使用CSS框架如Bootstrap来快速创建响应式网页。
3. 弹性图片(Fluid Images):为了适应不同设备的屏幕尺寸,图片也需要进行相应的调整。
可以使用CSS来定义图片的最大宽度为100%,然后根据设备屏幕的大小自动调整图片的大小。
这样当网页在不同设备上显示时,图片可以根据可用空间进行缩放,避免了图片溢出或变形的问题。
4. CSS视口单位(CSS Viewport Units):CSS提供了视口单位(vw、vh、vmin和vmax),可以根据设备视口的大小来调整元素的大小。
视口单位是相对于视口宽度或高度的单位,1vw表示视口宽度的1%。
使用视口单位,可以轻松实现元素的自适应布局,而不需要使用固定单位。
5. 隐藏或显示不必要的内容:在响应式布局中,我们可以根据设备屏幕的大小选择显示或隐藏不必要的内容。
通过使用CSS的display属性或媒体查询,可以根据设备的屏幕尺寸来隐藏或显示特定的元素,提高页面的加载速度和用户体验。
以上是几种常见的实现响应式布局的方法,根据具体的项目需求和设计要求,可以选择适合的方法或者结合多种方法来实现响应式布局。
响应式布局编辑响应式布局是Ethan Marcotte在2010年5月份提出的一个概念,简而言之,就是一个网站能够兼容多个终端——而不是为每个终端做一个特定的版本。
这个概念是为解决移动互联网浏览而诞生的。
响应式布局可以为不同终端的用户提供更加舒适的界面和更好的用户体验,而且随着目前大屏幕移动设备的普及,用大势所趋来形容也不为过。
随着越来越多的设计师采用这个技术,我们不仅看到很多的创新,还看到了一些成形的模式。
1.优点和缺点编辑优点:面对不同分辨率设备灵活性强能够快捷解决多设备显示适应问题缺点:兼容各种设备工作量大,效率低下代码累赘,会出现隐藏无用的元素,加载时间加长其实这是一种折中性质的设计解决方案,多方面因素影响而达不到最佳效果一定程度上改变了网站原有的布局结构,会出现用户混淆的情况2设计思路编辑我们在上面了解了什么是响应式布局,那在我们的实际项目中应该怎么去设计呢?在以往我们设计网站的时候都会受到不同浏览器的兼容性的困扰,还要来个不同尺寸设备,我们该怎么淡定下来呢?有需求就会有解决方案,说到响应式布局,就不得不提起CSS3中的Media Query(媒介查询),这可是个好东西,易用、强大、快捷……Media Query是制作响应式布局的一个利器,使用这个工具,我们可以非常方便快捷的制造出各种丰富的实用性强的界面。
接下来就一起来深入的了解Media Query。
1、CSS3中的Media Query(媒介查询)是什么?通过不同的媒介类型和条件定义样式表规则。
媒介查询让CSS可以更精确作用于不同的媒介类型和同一媒介的不同条件。
媒介查询的大部分媒介特性都接受min和max用于表达”大于或等于”和”小于或等于”。
如:width会有min-width和max-width媒介查询可以被用在CSS中的@media和@import规则上,也可以被用在HTML和XML中。
通过这个标签属性,我们可以很方便的在不同的设备下实现丰富的界面,特别是移动设备,将会运用更加的广泛。
2、media query能够获取哪些值?设备的宽和高device-width,device-height显示屏幕/触觉设备。
渲染窗口的宽和高width,height显示屏幕/触觉设备。
设备的手持方向,横向还是竖向orientation(portrait|lanscape)和打印机等。
画面比例aspect-ratio点阵打印机等。
设备比例device-aspect-ratio-点阵打印机等。
对象颜色或颜色列表color,color-index显示屏幕。
设备的分辨率resolution。
3、语法结构及用法@media 设备名only (选取条件)not (选取条件)and(设备选取条件),设备二{sRules} 示例一:在link中使用@media:<link rel=“stylesheet”type=“text/css”media=“only screen and (max-width:480px),only screen and (max-device-width:480px)”href=“link.css”/>上面使用中only可省略,限定于计算机显示器,第一个条件max-width是指渲染界面最大宽度,第二个条件max-device-width是指设备最大宽度。
示例二:在样式表中内嵌@media:@media (min-device-width:1024px)and (max-width:989px),screen and (max-device-width:480px),(max-device-width:480px)and (orientation:landscape),(min-device-width:480px)and (max-device-width:1024px)and (orientation:portrait){srules}在示例二中,设置了电脑显示器分辨率(宽度)大于或等于1024px(并且最大可见宽度为989px);屏宽在480px及其以下手持设备;屏宽在480px以及横向(即480尺寸平行于地面)放置的手持设备;屏宽大于或等于480px小于1024px以及垂直放置设备的css样式。
从上面的例子可以看出,字符间以空格相连,选取条件包含在小括号内,srules为兼容设置的样式表,包含在中括号里面。
only(限定某种设备,可省略),and(逻辑与),not(排除某种设备)为逻辑关键字,多种设备用逗号分隔,这一点继承了css基本语法。
4、可用设备名参数:可用设备名参数可用设备名参数5、逻辑关键字:逻辑关键字逻辑关键字6、可用设备名参数:可用设备名参数可用设备名参数7、测试Media Queries最后,我们需要对我们刚刚设计的Media Queries进行测试,想要在不同设备上测试Media Queries的效果,可以使用一个浏览工具来检验不同尺寸屏幕下的显示效果,在这里为大家介绍一个不错的在线工具–Responsivator,它可以模拟iPhone等各种不同设备,并且还可以自定义不同尺寸屏幕的显示效果,只需要输入一个url甚至是本地的一个url(如:http://127.0.0.1/),就可以看到网站在不同尺寸屏幕下的显示效果。
8、通过Media Queries实现响应式布局设计好了,我们明白了什么是Media Query,那我们一起来运用到响应式布局的设计项目中去。
设计思路很简单,首先先定义在标准浏览器下的固定宽度(假如标准浏览器的分辨率为1024px,那么我们设置宽为980px),然后用Media Query来监测浏览器的尺寸变化,当浏览器的分辨率小于1024px的时候,则通过Media Query预设的样式表来将页面的宽度设置为百分比显示,这样子页面的结构元素就会根据浏览器的的尺寸来进行相对应的调整。
同理,当浏览器的可视区域改变到某个值(假如为650px)的时候,页面的结构元素根据Media Query 预设的层叠样式表来进行相对应的调整。
看看我们的例子:/* 当浏览器的可视区域小于980px */@media screen and (max-width:980px){#wrap {width:90%; margin:0 auto;}#content {width:60%;padding:5%;}#sidebar {width:30%;}#footer {padding:8% 5%;margin-bottom:10px;}}/* 当浏览器的可视区域小于650px */@media screen and (max-width:650px){#header {height:auto;}#searchform {position:absolute;top:5px;right:0;}#content {width:auto; float:none; margin:20px 0;}#sidebar {width:100%; float:none; margin:0;}}通过上面我们就可以监测浏览器的可视区域变化的时候我们的页面结构元素也会相对应的变化,当然你可以再多设置几个尺寸的监测层叠样式表,这样子就可以根据不同尺寸设备来进行响应式的布局。
为了更好的显示效果,我们往往还要格式化一些CSS属性的初始值:/* 禁用iPhone中Safari的字号自动调整*/html {-webkit-text-size-adjust:none;}/* 设置HTML5元素为块*/article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display:block;}/* 设置图片视频等自适应调整*/img {max-width:100%;height:auto;width:auto\9; /* ie8 */}.video embed,.video object,.video iframe {width:100%;height:auto;}最后要注意的是在页面的头部<head></head>之间加上下面这句∶<meta name=“viewport” content=“width=de vice-width; initial-scale=1.0”>meta viewport这个属性是在移动设备上设置原始大小显示和是否缩放的声明。
参数设置∶width –viewport的宽度height –viewport的高度initial-scale –初始的缩放比例minimum-scale –允许用户缩放到的最小比例maximum-scale –允许用户缩放到的最大比例user-scalable –用户是否可以手动缩放[2] 比如一个移动终端屏幕显示最大宽度为480px,那么css代码如下:@media only screen and(max-device-width:480px){…/*此处为支持此移动设备的css样式代码,需将其放置于pc终端css代码之后覆盖之*/}如果是大型的网站或项目,我们讲为各类型的移动终端独立编写css样式文件,此时的使用方式如下:<link rel=”stylesheet” type=”text/css” media=”only screen and (max-device-width:480p x)” href=”small_screen480.css”>/*small_screen480.css即为对480px大小移动终端书写的css文件*/css文件被区分引用,接下来的工作就是我们非常熟识的弹性布局了,另外再注意俩点,一是图片,在移动设备上,要做一些特定适合的小图片来匹配,如果单纯使用压缩的图片会失真,影响用户体验;二是在头部加入如下代码,目的是声明在移动设备上设置原始大小显示和是否缩放[2]<meta name=”viewport”content=”width=device-width; initial-scale=1.0″>[2] 最后说下IE浏览器,因为他不支持media Queries的,使用时需要引用一个Media Query Javascript解决,如下:<!–[if lt IE 9]><script src=”../../css3-mediaqueries.js”></script><![endif]–>例子:<head><title></title><meta charset="utf-8"/><meta name="viewport"content="width=device-width, initial-scale=1.0"/><scriptsrc="/svn/trunk/css3-mediaqueries.js" ></script><!--<link href="mbShow.css" rel="stylesheet" type="text/css" />--><style>body {font: 1em/150%Arial,Helvetica,sans-serif;}a {color: #669;text-decoration: none;}a:hover {text-decoration: underline;}h1 {font: bold36px/100%Arial,Helvetica,sans-serif;}div{border:1px solid#0094ff;}#pagewrap {padding: 5px;width: 960px;margin: 20px auto;padding-bottom:98px;}#header {height: 180px;}#content {width: 600px;float: left;}#sidebar {width: 300px;float: right;}#footer {clear: both;}@media screen and (max-width: 980px) {#pagewrap {width: 94%;}#content {width: 60%;}#sidebar {width: 30%;}}@media screen and (max-width: 700px) {#content {width: auto;float: none;}#sidebar {width: auto;float: none;}}@media screen and (max-width: 480px) {#header {height: auto;}h1 {font-size: 24px;}#sidebar {display: none;}}#content {background: #f8f8f8;}#sidebar {background: #f0efef;}#header, #content, #sidebar {margin-bottom: 5px;}#pagewrap, #header, #content, #sidebar, #footer {border: solid1px#ccc;}html {-webkit-text-size-adjust: none;}a:hover img{filter: Alpha(opacity=50);opacity:0.5;}a:link, a:visited{ color:#7c8187; text-decoration: none;}a:hover{ color:#266680; text-decoration: none;}.video embed,.video object,.video iframe { width: 100%;height: auto;}img {max-width: 100%; height: auto;width: auto; /* ie8 */}.bottom_menu{width:100%; position:fixed; bottom:0; background:#008388; height:88px;}.bottom_menuInfo td{height:88px; line-height:88px; color:#fff; font-size:28px; font-family:"黑¨²体¬?"}</style></head>。