当前位置:首页 >> 网页制作

CSS 屏幕大小自适应的实现示例

要想实现css屏幕大小自适应,首先得引入 CSS3 @media 媒体查询器:

media的使用和规则:

  ①被链接文档将显示在什么设备上。

  ②用于为不同的媒介类型规定不同的样式。

语法: 

@media 设备名 only (选取条件) not (选取条件) and(设备选取条件),设备二{sRules}

实例:

/* 这是匹配横屏的状态,横屏时的css代码 */

@media all and (orientation :landscape){}

/* 这是匹配竖屏的状态,竖屏时的css代码 */

@media all and (orientation :portrait){}

@media X and (min-width:200px){}
/*X为媒体类型--->比如print/screen/TV等等*/

/* 宽度大于600px小于960之间时,隐藏footer结构 */

@media all and (min-height:640px) and (max-height:960px){
      footer{display:none;}
}

在实际应用的时候,首先得在HTML的头文件<head>里上加入以下代码:

<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的类型很多,这里就发菜鸟教程的对应链接了:https://www.jb51.net/css/103906.html

下面是media类型的screen(用于电脑屏幕,平板电脑,智能手机等):

css自适应屏幕大小大方法:

@media screen and (min-width: 320px) and (max-width: 1156px){

              .site-bg-dl {
              position: fixed;
              height: 100%;
              width: 100%;
              z-index: 0;
              background-image: url(bjxzfwzx/images/bj1.png);
              background-size: cover;
              background-repeat: no-repeat;
              background-attachment: fixed;
              background-size:100% 100%;
              -moz-background-size:100% 100%;
            }
}

解释:

告诉浏览器当屏幕大于320px,并小于1156px下执行此代码;

在css中添加如下内容 可以分别定制不同屏幕的显示样式:

/* 大屏幕 :大于等于1200px*/
@media (min-width: 1200px) { ... }

/*默认*/
@media (min-width: 980px){...}

/* 平板电脑和小屏电脑之间的分辨率 */
@media (min-width: 768px) and (max-width: 979px) { ... }

/* 横向放置的手机和竖向放置的平板之间的分辨率 */
@media (max-width: 767px) { ... }

/* 横向放置的手机及分辨率更小的设备 */
@media (max-width: 480px) { ... }