码迷,mamicode.com
首页 > 其他好文 > 详细

响应式布局

时间:2017-01-19 18:07:53      阅读:255      评论:0      收藏:0      [点我收藏+]

标签:img   步骤   动态   foo   frame   url   initial   告诉   需要   

目的是实现不同分辨率的终端上浏览网页的不同展示方式。

响应式设计的步骤:

1.设置meta标签 <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">

因为大多数移动浏览器会将html页面放大为宽的视图,这个标签告诉浏览器使用设备宽度作为视图宽度并禁止初始的缩放。

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

假如一个终端的分辨率小于 980px,那么可以这样写:

@media screen and (max-width: 980px) {
  #head { … }
  #content { … }
  #footer { … }
}

3.设置多种视图宽度

假如我们要设定兼容 iPad 和 iphone 的视图,那么可以这样设置:

/** iPad **/
@media only screen and (min-width: 768px) and (max-width: 1024px) {}
/** iPhone **/
@media only screen and (min-width: 320px) and (max-width: 767px) {}

注意事项:

1.宽度使用百分比

2.处理图片缩放的方法

2.1简单的解决方法可以使用百分比,会放大或者缩小图片。可以如下设置:

img { width: auto; max-width: 100%; }

2.2用::before::after伪元素 +content 属性来动态显示一些内容或者做其它很酷的事情,在 css3中,任何元素都可以使用 content 属性了,这个方法就是结合 css3 的 attr 属性和 HTML 自定义属性的功能: HTML结构:

<img src="image.jpg"
     data-src-600px="image-600px.jpg"
     data-src-800px="image-800px.jpg"
     >

css控制:

@media (min-device-width:600px) {
    img[data-src-600px] {
        content: attr(data-src-600px, url);
    }
}

@media (min-device-width:800px) {
    img[data-src-800px] {
        content: attr(data-src-800px, url);
    }
}

3.其他属性

例如 pre ,iframe,video 等,都需要和img一样控制好宽度。对于table,建议不要增加 padding 属性,低分辨率下使用内容居中:

table th, table td { padding: 0 0; text-align: center; }




 

响应式布局

标签:img   步骤   动态   foo   frame   url   initial   告诉   需要   

原文地址:http://www.cnblogs.com/xj198197/p/6307484.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!