• 转自CSDNattilax的专栏 :自适应网页设计 跟 响应式 设计的区别跟原理and实践总结


    响应式Web设计(Responsive Web design)的理念是: 1

    #-----------自适应布局VS响应式布局 2

    设计思路Mobile First 2

    #---手机and平板分辨率 3

    #---------viewport...允许网页宽度自动调整贝儿哪不个网页缩小兰.. 3

    #----------处理图片缩放的方法 3

    #----选择加载CSS  Media Queries 3

    #=====3、布局宽度使用相对宽度(弹性布局) 4

    #-----4、页面使用相对字体 4

    流动布局(fluid grid) 流体布局,弹性布局 5

    #----游戏网页的特别的设计 5

    #------移动端/桌面端内容自适应 5

    #-------图片背景的自适应 6

    大尺寸图片的响应式设计 6

    混合使用自适应AWD and RWD 6

    参考: 6

    响应式Web设计(Responsive Web design)的理念是:

    页面的设计与开发应当根据用户行为以及设备环境(系统平台、屏幕尺寸、屏幕定向等)进行相应的响应和调整。具体的实践方式由多方 面组成,包括弹性网格和布局、图片、CSS media query的使用等。无论用户正在使用笔记本还是iPad,我们的页面都应该能够自动切换分辨率、图片尺寸及相关脚本功能等,以适应不同设备;换句话说, 页面应该有能力去自动响应用户的设备环境。响应式网页设计就是一个网站能够兼容多个终端——而不是为每个终端做一个特定的版本。这样,我们就可以不必为不 断到来的新设备做专门的版本设计和开发了。

    2010年,Ethan Marcotte提出了“Responsive Web Design”这个名词,指可以自动识别屏幕宽度、并做出相应调整的网页设计。使网站的页面布局能够根据不同设备和分辨率进行自动调整。

    作者 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com
    转载请注明来源: http://blog.csdn.net/attilax

    #-----------自适应布局VS响应式布局

    问:“什么样的网站/项目适合使用自适应布局(固定断点)?什么样的网站适合响应式布局?(流体网格)”

    答:理论上来说,响应式布局在任何情况下都比自适应布局好一些,但在某些情况下自适应布局更切实际。

    自适应布局可以让你的设计更加可控,因为你只需要考虑了了几种状态就万事大吉了。但在响应式布局中你可能需要面对非常多状态——是的,大部分状态之间的区别很小,但它们又的确是不同的——这样一来就很难确切搞清你的设计会是什么样。同时这也带来了测试上的难题,你很难有绝对的把握预测到它会怎样。换个角度说,这也是响应式布局的魅力所在。通过允许表面上的不确定因素存在,你可以获得更高层次上的确定。虽然你无法在精确到像素级别准确预知你的设计如何在943px×684px视觉区域汇中展示,但你能确定的是它们一定能展示的很好——不管是表层特征还是布局结构都有条不紊。

      自适应布局有它自己的优势,因为它们实施起来代价更低,测试更容易,这往往让他们成为更切实际的解决方案。自适应布局可以看做响应式布局的“穷兄弟”,在资源有限的情况下就可以让它出马。特别是改进现有网站的时候尤其奏效,因为全部重写代码在这时并不可行。这种案例中,采用自适应布局是一个不错的出发点。Dan Cederholm 在他的文章《Adapted》中也曾说过,这种办法是可行的。

      

      
                               responsive-screens

    设计思路Mobile First


    Mobile First(从移动端开始,RWD ):
    一切从最小屏幕的手机端开始(比如 iPhone 的 320px ),先确定内容,然后逐级往大屏幕设计。
    不同于原来网页设计,总是从桌面电脑的 1024px 开始的。 

    #---手机and平板分辨率

    手机正常的2.8 --3.5--4.5   分辨率是320*480

    平板好像是600*840

    #---------viewport...允许网页宽度自动调整贝儿哪不个网页缩小兰..

    下面的视图标签告诉浏览器,使用设备的宽度作为视图宽度并禁止初始的缩放。在<head>标签里加入这个meta标签

    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">

    #----------处理图片缩放的方法

        简单的解决方法可以使用百分比,但这样不友好,会放大或者缩小图片。那么可以尝试给图片指定的最大宽度为百分比。假如图片超过了,就缩小。假如图片小了,就原尺寸输出。

    img {  auto; max- 100%; }

    #----选择加载CSS  Media Queries

    自适应网页设计"的核心,就是CSS3引入的Media Query模块。
    它的意思就是,自动探测屏幕宽度,然后加载相应的CSS文件。

    Media Queries 是响应式设计的核心。

    它根据条件告诉浏览器如何为指定视图宽度渲染页面。假如一个终端的分辨率小于 980px,那么可以这样写

    @media screen and (max- 980px) {

      #head { … }

      #content { … }

      #footer { … }

    }

    例如使用如下的代码,可以让屏幕宽度低于480像素的设备(如iPhone等),网页侧栏隐藏中部内容栏宽度自动调节。以下代码针对Z-Blog,WordPress相关css样式的id标签名称只需修改一下即可。

      @media screen and (max-device- 480px) {

     #divMain{

     float: none;

     auto;

     }

     #divSidebar {

     display:none;

     }

    }

    #=====3、布局宽度使用相对宽度(弹性布局)

    由于网页会根据屏幕宽度调整布局,所以不能使用绝对宽度的布局,也不能使用具有绝对宽度的元素。这一条非常重要。

    网页总体框架可以使用绝对宽度,但往下的内容框架、侧栏等最好使用相对宽度,这样针对不同分辨率进行修改就方便。当然也可以不用相对宽度,那就需要在 @media screen and (max-device- 480px) 里面增加各个div的针对小屏幕的宽度,实际上更麻烦。

    #-----4、页面使用相对字体

    在HTML页面上不要使用绝对字体(px),而要使用相对字体(em),两者换算关系是:em = px*16 ,例如16px就等于1em。

    总之,根据上面四步进行修改的话,可以很简单地将一个网站修改为适合多种设备浏览的页面,这对于通过手机访问网站的用户来说,的确是一件好事。

    流动布局(fluid grid) 流体布局,弹性布局

    "流动布局"的含义是,各个区块的位置都是浮动的,不是固定不变的。
      .main {
        float: right;
         70%; 
      }
      .leftBar {
        float: left;
         25%;
      }
    float的好处是,如果宽度太小,放不下两个元素,后面的元素会自动滚动到前面元素的下方,不会在水平方向overflow(溢出),避免了水平滚动条的出现。
    另外,绝对定位(position: absolute)的使用,也要非常小心。

    #----游戏网页的特别的设计

    游戏网页因为必须显示在第一个屏上,所以,普通的自适应设计需要有些更改..

    假如游戏为了纵向设计,  假如平板旋转,要是还是100%宽度显示,走游戏不能显示满的第一的屏...这样,就要使用jquery 获得屏幕宽度,要是纵横比,不是纵向的,就要限制一个最大宽度,可以显示第一的屏..

    #------移动端/桌面端内容自适应

    在服务器端操作 HTML 内容(比如为移动端减少内容,为桌面端提供更多内容)

    许多的框架能实现这个.贝儿就要使用js/后台语言判断来实现..

    值得收藏的14款响应式前端开发框架-CSDN.NET.htm

    #-------图片背景的自适应

    使用css3   or  使用一个zindex=-5的图片,width 100%

    大尺寸图片的响应式设计

    Filament组提出了另外一种技术不仅是正确地设置图像的尺寸,在较小的设备中为了节约空间,还降低图像的分辨率,加载时间和移动宽带(流量)。

    这种技术需要一些文件,这些文件都在Github:一个JavaScript文件(rwd-images.js),Htaccess文件,和一张图片(rew.gif),然后,在HTML代码中,我们引用两种图片:一个小的“R”前缀,必须适应(“响应”)和大的data-fullsrc(HTML5启用的一个属性,更多详情可以访问这个页面)。

    实现这种技术,看起来如下:

    img <img src="smallRes.jpg" data-fullsrc="largeRes.jpg">

    当屏幕尺寸大于480px,页面就去加载大图片(largeRes.jpg)。JavaScript插入元素是可以允许页面分离适应的图片。当页面 加载完成,除了大或者小图片会根据预先的设置来加载之外,所有文件都会正常的加载下来。如果这技术不起作用,所有的(大的和小的)图片都被加载下来,这样 就会浪费宽带,反过来说,这技术防止了不必要的图片加载下来,另外它是兼容现代浏览器(包括IE8)和移动设备的。

    混合使用自适应AWD and RWD

     参考:

    网页自适应的实现方法(网页分辨率不同以及手机和电脑网页的切换)_移动互联网开发_百度空间.htm

    译文:自适应布局VS响应式布局以及最佳表单字段标签_Ryanwang_新浪博客.htm

    手机web——自适应网页设计(html_css控制)_唐老鸭光光_百度空间.htm

    自适应响应式设计 w3coo_CSS3-w3coo.htm

  • 相关阅读:
    如何利用python制作微信好友头像照片墙?
    机器学习入门路线和资源
    突然“被辞职”的时候,原来可以拿到这么多钱!
    一个致命的 Redis 命令,导致公司损失 400 万
    程序员:想知道你每天按了多少次键盘吗?
    想了解真实的中国历史吗?建议看看这10部历史纪录片,受益终生!
    SpringBlade 2.0-RC3 发布,全新的微服务开发平台
    Syncd-开源自动化部署工具
    学习Spring Boot看这两个开源项目就够了!非得值得收藏的资源
    大型视频直播平台架构由浅入深详细讲解
  • 原文地址:https://www.cnblogs.com/qilinge/p/4972859.html
Copyright © 2020-2023  润新知