CSS3,Media,Query如今的屏幕分辨率,小至320px(iPhone),大到2560px甚至更高(大显示器),变化范围极大。除了使用传统的台式机,用户会越来越多的通过手机、上网本、iPad一类的平板设备来浏览页面。这种情况下,固定宽度的设计方案将会显得越发不合理。页面需要有更好的适应性,其布局结构要做到根据不同的设备及屏幕分辨率进行响应调整。接下来,我们将了解一下怎样通过html5和css3 Media Queries(媒介查询)相关技术来实现跨设备跨浏览器的响应式web设计方案。
我们需要在页面中调用css3-mediaqueries.js文件,来帮助IE8或是之前的版本支持CSS3 media queries:
<!--[if lt IE 9]><script src="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script><![endif]-->
接下来,我们要创建css样式表,并在页面中调用:
<link href="media-queries.css" rel="stylesheet" type="text/css">
弹性图片
img {max-width:100%;height:auto;width:auto/9; /* ie8 */}
CSS里width: auto/9 是什么意思?
这是专门针对ie的hack写法“/9″ 在IE6/IE7/IE8/IE9/IE10下生效 “/0” 在 IE8/IE9/IE10下生效 “/9/0” 在IE9/IE10下生效
弹性内嵌元素(视频)
.video embed,.video object,.video iframe {width: 100%;height: auto;}
字号自动调整的问题(通过-webkit-text-size-adjust:none禁用iPhone中Safari的字号自动调整)
html{-webkit-text-size-adjust:none;}
页面宽度缩放的问题
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0; maximum-scale=1.0; user-scalable=0;">
原文转载自WEB前端开发(www.css119.com) CSS3,Media,Query
|