响应式设计-前端笔记
来源:互联网 发布:华夏域名注册 编辑:程序博客网 时间:2024/05/18 17:39
我的学习网址
一篇归纳的博客:响应式和自适应的区别
响应式设计网站参考:mediaqueri.es;
另一个响应式设计网站参考:responsive.cn
更详细周到的学习响应式:折腾响应式布局设计
悄悄经验到我的响应式学习网站(请注意它的banner):alistapart.com
一、网页宽度初始设置
<meta name="viewport" content="width=device-width,inital-scale=1.0"/><!--[if it IE 9]> <script src="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script><![end if]-->
*解释:上面的meta——网页宽度默认是屏幕宽度device-width,并且将网页原始缩放比例inital-scale设置为1.0,即网页初始大小为屏幕大小的100%;
由于IE9以下版本不支持,所以采用加载css3-mediaqueries.js的方法来解决*
二、css中的响应式设置
1、html中选择性加载css文件
<link rel="stylesheet" media="screen and (max-device-width:400px)" href="mystyle.css" />
2、css中选择加载css文件
@import url("mystyle.css") screen and(max-device-width:400px);
3、css的选择判断
@media screen and(max-device-width:400px){...css 语句 ...}
三、图片的响应式设置
1、img的响应式设置
img{ //假如图片超过了,就缩小。假如图片小了,就原尺寸输出。 width: auto; max-width: 100%;}
2、用content元素选择加载不同分辨率的图片
用::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" alt="">
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); }}
老版本IE不兼容max-width所以写成:
img { width: 100%; }
此外,windows平台缩放图片时,可能出现图像失真现象。这时,可以尝试使用IE的专有命令:
img { -ms-interpolation-mode: bicubic; }
或者,Ethan Marcotte的imgSizer.js。
addLoadEvent(function() { var imgs = document.getElementById("content").getElementsByTagName("img"); imgSizer.collate(imgs); });
不过,有条件的话,最好还是根据不同大小的屏幕,加载不同分辨率的图片。有很多方法可以做到这一条,服务器端和客户端都可以实现。
打造响应式布局
我们可以监测页面布局随着不同的浏览环境而产生的变化,如果它们变的过窄过短或是过宽过长,则通过一个子级样式表来继承主样式表的设定,并专门针对某些布局结构进行样式覆写。我们来看下代码示例:
/* Default styles that will carry to the child style sheet */html,body{ background... font... color...}h1,h2,h3{}p, blockquote, pre, code, ol, ul{}/* Structural elements */#wrapper{ width: 80%; margin: 0 auto; background: #fff; padding: 20px;}#content{ width: 54%; float: left; margin-right: 3%;}#sidebar-left{ width: 20%; float: left; margin-right: 3%;}#sidebar-right{ width: 20%; float: left;}
下面的代码可以放在子级样式表Mobile.css中,专门针对移动设备进行样式覆写:
#wrapper{ width: 90%;}#content{ width: 100%;}#sidebar-left{ width: 100%; clear: both; /* Additional styling for our new layout */ border-top: 1px solid #ccc; margin-top: 20px;}#sidebar-right{ width: 100%; clear: both; /* Additional styling for our new layout */ border-top: 1px solid #ccc; margin-top: 20px;}
- 响应式设计-前端笔记
- 前端之响应式设计
- 网罗响应式设计前端设计框架
- 15个响应式设计前端框架
- 与前端设计师谈响应式设计
- 响应式前端设计的优化
- 前端复习--来谈谈响应式设计
- web前端响应式设计总结
- 响应式设计学习笔记
- 分享前端网站模板,HTML5的响应式设计模板
- 15个最新的响应式设计前端框架
- 15个最新的响应式设计前端框架
- 前端开发响应式设计之媒体查询(bootstrap)
- 响应式网页设计学习笔记
- 《响应式Web设计实践》学习笔记
- 《响应式web设计实践》笔记
- 响应式Web设计学习笔记
- 响应式前端开发
- 好的软件架构设计
- Building and Testing with Gradle笔记3——Ant and Gradle
- 解决cell分割线不到边界的问题
- Android Service详解(六)---绑定服务BoundService详解之AIDL的自定义属性使用
- 【数据结构与算法006】基本概念和枚举算法
- 响应式设计-前端笔记
- AS
- 原生JS仿jquery封装的ajax方法 支持JOSNP跨域问题
- greys
- DHCP欺骗(DHCP Sproofing)
- Mobile Automation Testing URL Notes
- tomcat配置虚拟路径
- 【Web】Servlet基础学习
- My97DatePicker插件