zoukankan      html  css  js  c++  java
  • 响应式布局的开发基础

     

    • 第一:正确理解响应式布局

      响应式网页设计就是一个网站能够兼容多个终端-而不是为每个终端做一个特定的版本。打个比方来说:现在社会有很多响应产品,例如折叠沙发,折叠床等等,当我们需要把沙发放到一个角落的时候,此刻沙发就好比div吧,而角落里的某个地方就好比父元素,由于父元素空间的改变,我们不得不调整div,让它能够依然放在角落里。在项目中你会遇到不同的终端,由于终端分辨率不同,所以你要想让用户体验更好,就必要让你的页面能够兼容多个终端。

      第二:响应式设计的步骤

      了解了什么是响应式,那么接下来我们就要说说响应式设计的步骤,有人这时候会说“博主,你傻啊,响应式设计的步骤不就是1.编写非响应式代码、2.加工成响应式代码、3.响应式细节处理、4.完成响应式开发吗?”博主菊花一震 原来高手在民间啊,微微一硬表示敬重,我去 ,说错了 是微微一笑,大家不要误会啊。

    言归正传,博主因为是刨根问底拦不组的,所以在此就往响应式设计的祖坟上刨,深入了解下这四个步骤。

    1.布局及设置meta标签

    当创建一个响应式网站,或者非响应式网站变成响应式的时候,首先要关注元素的布局。我在创建响应式布局的时候习惯先写非响应式布局,页面固定宽度大小,我觉得这个对在座的各位没有任何难度。如果完成了非响应式那么我在去添加媒体查询(Media Query)和响应式代码。这种操作更容易实现响应式特性。

    当你完成当你已经完成了无响应的网站,做的第一件事是在你的 HTML 页面,粘贴下面的代码到和标签之间。这将设置屏幕按1:1的尺寸显示,在 iPhone 和其他智能手机的浏览器提供网站全视图浏览,并禁止用户缩放页面。

    在head部分引入

    <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <link rel="stylesheet" href="../bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="../bootstrap/css/help.css">
    user-scalable属性能够解决ipad切换横屏之后触摸才能回到具体尺寸的问题。
    在body部分引入
    <script src="../bootstrap/js/jquery-1.11.2-min.js"></script>
    <script src="../bootstrap/js/bootstrap.min.js"></script>

    2.通过媒体查询来设置样式media query

    media query 是响应式设计的核心,它能够和浏览器进行沟通,告诉浏览器页面如何呈现,假如一个终端的分辨率小于980px,那么可以这样写

     @media screen and (max-980px){
         #head { … }
         #content { … }
         #footer { … }
    }这里面的样式会覆盖掉之前所定义的样式。

    3.设置多种视图宽度

    假如我们要兼容ipad和iphone视图,我们可以这样设置:

    /**ipad**/
    @media only screen and (min-768px)and(max-1024px){}
    /**iphone**/
     @media only screen and (320px)and (768px){}

    3.字体设置

    到目前为止,开发人员用到的字体单位大部分都是像素,虽然像素在普通网站上是Ok的,但是我们仍然需要响应式字体。一个响应式的字体应关联它的父容器的宽度,这样才能适应客户端屏幕。

    css3引入了新的单位叫做rem,和em类似但对于Html元素,rem更方便使用。

    rem是相对于根元素的,不要忘记重置根元素字体大小:

    html{font-size:100%;}
    完成后,你可以定义响应式字体:
    @media (min-640px){body{font-size:1rem;}}
    @media (min-960px){body{font-size:1.2rem;}}
    @media (min-1200px){body{font-size:1.5rem;}}
    不理解rem的童鞋,在这里给大家推荐一篇写的不错的博客(http://www.cnblogs.com/YYvam1288/p/5123272.html)

    最后我们来总结下响应式布局的实现原理

    首先我们应该遵循移动端优先,交互和设计以移动端为主,pc则作为移动端的扩展,一个页面需要兼容不同终端,那么有两个关键点是我们需要去做到响应式的:响应式布局和响应式内容(图片、多媒体)

            1.响应式布局
               1.Meta标签定义
               2.使用Media Queries适配对应样式
            2.响应式内容
         1.响应式图片
  • 相关阅读:
    Java 8 新特性之 Stream&forEach&map&filter&limit&sorted&统计函数&Collectors&并行(parallel)程序(转)
    kafka入门:简介、使用场景、设计原理、主要配置及集群搭建(转)
    java8 stream API
    Docker容器CPU、memory资源限制
    JVM调优总结 -Xms -Xmx -Xmn -Xss
    JAVA8之妙用Optional解决判断Null为空的问题
    【王凤鸣 太极缠丝功笔记】第二章
    【精美凉菜】黄瓜腐竹花生豆
    【瓜果篇】黄瓜
    【Teradata UDF】中文按字符查找chs_instr
  • 原文地址:https://www.cnblogs.com/dmwcq/p/5883651.html
Copyright © 2011-2022 走看看