CSS 屏幕大小自适应
要想实现css屏幕大小自适应,首先得引入 CSS3 @media 媒体查询器:
media的使用和规则:
①被链接文档将显示在什么设备上。
②用于为不同的媒介类型规定不同的样式。
语法: 1 @media 设备名 only (选取条件) not (选取条件) and(设备选取条件),设备二{sRules}
实例:
1 /* 这是匹配横屏的状态,横屏时的css代码 */ 2 3 @media all and (orientation :landscape){} 4 5 /* 这是匹配竖屏的状态,竖屏时的css代码 */ 6 7 @media all and (orientation :portrait){} 8 9 @media X and (min-width:200px){} 10 /*X为媒体类型--->比如print/screen/TV等等*/ 11 12 /* 宽度大于600px小于960之间时,隐藏footer结构 */ 13 14 @media all and (min-height:640px) and (max-height:960px){ 15 footer{display:none;} 16 }
在实际应用的时候,首先得在HTML的头文件<head>里上加入以下代码:
1 <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
解释:
width = device-width:宽度等于当前设备的宽度
initial-scale:初始的缩放比例(默认设置为1.0)
minimum-scale:允许用户缩放到的最小比例(默认设置为1.0)
maximum-scale:允许用户缩放到的最大比例(默认设置为1.0)
user-scalable:用户是否可以手动缩放(默认设置为no,因为我们不希望用户放大缩小页面)
因为media的类型很多,这里就发菜鸟教程的对应链接了:http://www.runoob.com/cssref/css3-pr-mediaquery.html
下面是media类型的screen(用于电脑屏幕,平板电脑,智能手机等):
css自适应屏幕大小大方法:
1 @media screen and (min-width: 320px) and (max-width: 1156px){ 2 3 .site-bg-dl { 4 position: fixed; 5 height: 100%; 6 width: 100%; 7 z-index: 0; 8 background-image: url(bjxzfwzx/images/bj1.png); 9 background-size: cover; 10 background-repeat: no-repeat; 11 background-attachment: fixed; 12 background-size:100% 100%; 13 -moz-background-size:100% 100%; 14 } 15 }
解释:
告诉浏览器当屏幕大于320px,并小于1156px下执行此代码;
在css中添加如下内容 可以分别定制不同屏幕的显示样式:
1 /* 大屏幕 :大于等于1200px*/ 2 @media (min-width: 1200px) { ... } 3 4 /*默认*/ 5 @media (min-width: 980px){...} 6 7 /* 平板电脑和小屏电脑之间的分辨率 */ 8 @media (min-width: 768px) and (max-width: 979px) { ... } 9 10 /* 横向放置的手机和竖向放置的平板之间的分辨率 */ 11 @media (max-width: 767px) { ... } 12 13 /* 横向放置的手机及分辨率更小的设备 */ 14 @media (max-width: 480px) { ... }