如何添加CSS让页面自适应手机屏幕

html-css011

如何添加CSS让页面自适应手机屏幕,第1张

无论是电脑还是手机,要做到自适应屏幕,其实都是一样的。

首先,在网页代码的头部,加入一行viewport标签

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no" />

viewport是网页默认的宽度和高度,上面这行代码的意思是,网页宽度默认等于屏幕宽度(width=device-width),原始缩放比例(initial-scale=1)为1.0,即网页初始大小占屏幕面积的100%。即让viewport的宽度等于物理设备上的真实分辨率,不允许用户缩放。

其次:网页宽度css一定要使用百分比width: xx%,不能用绝对像素。当然可以用width:auto

第三,流动布局

.left{

float: left

width: ***%

}

第四,选择加载css

这是自适应的关键部分

.abc{ height:300pxborder:1px solid #000margin:0 auto} 

@media screen and (min-width: 1201px) { 

.abc {width: 1200px}  

/* 设置了浏览器宽度不小于1201px时 abc 显示1200px宽度 */ 

 

@media screen and (max-width: 1200px) { 

.abc {width: 900px}  

/* 设置了浏览器宽度不大于1200px时 abc 显示900px宽度 */ 

 

@media screen and (max-width: 901px) { 

.abc {width: 200px}  

/* 设置了浏览器宽度不大于901px时 abc 显示200px宽度 */ 

 

@media screen and (max-width: 500px) { 

.abc {width: 100px}  

/* 设置了浏览器宽度不大于500px时 abc 显示100px宽度 */ 

需要注意是CSS代码顺序,由大到小排版CSS(判断浏览器宽度越大越放前),这样是因为逻辑关系,@media 判断CSS排错将导致判断失效。

第四,图片自适应

img { max-width: 100%}

老版本的IE不支持max-width,所以只好写成:img { width: 100%}

筚五、采用相对字体大小

字体也不能使用绝对大小(px),而只能使用相对大小(em)。

这里最重要的,是第三条和第四条,也就是采用流动布局和css选择加载。祝你好运!

1. 用百分比实现 width:50%,这样会根据屏幕的大小来自适应宽度

(插一条calc的属性详解)

vw :Viewport width,即容器(可以是div)的宽度,默认1vw=整个视窗宽度的1%,全屏为100vw。比如视窗宽度为1200px,1vw=120px=1200px*1%,如果是满屏就则为100vw=1200px。

vh :Viewport height,即容器(如div)的高度,默认1vh=整个可视窗口高度的1%,全屏是100vh。

2. calc(100vmin)也可以达到自适应的效果,但还是用起来效果一般

3. calc(100vw - px)  vw是根据屏幕的大小来计算的,屏幕缩小,100vw也会变大

两种方式:一种方式,手机站css设置的时候全部用百分比来控制,这样所有的页面都会自动缩放;

第二种方式:需要你来判断浏览器的或者应该说是手机屏幕的大小,来设置其css样式:如:

当然我只是举个例子,其余的样式你可以自己设置,你设置个最大宽度与最小宽度max-width与min-width,一般都是320px--640px手机;

@media screen and (max-width:360px){body{font-size:12px}}

@media screen and判断如果浏览器宽度小于360px的话,执行样式,文字大小为12px

@media screen and (min-width:400px){body{font-size:18px}}

意思:判断浏览器宽度大于400px的时候,执行样式,文字大小为18px;