怎么让css随电脑像素尺寸自适应?

html-css09

怎么让css随电脑像素尺寸自适应?,第1张

第一步:你的这个banner,要设计成左右两端可以与页面背景相融合的那种形式。比如左右两端都用了渐变透明,看上去与整个网页的背景融合在了一起。

第二步:这个1000px的banner,在屏幕上居中显示。然后不管你的显示器分辨率多宽,它都会居中。

通过这种方式。这个1000px的banner,让人看上去不分显示器分辨率多大,都是通屏显示了。。。

没有其他的办法。除非你不在意图片变形,在网页中用一段js来取当前浏览器的实际宽度,然后用js来改变这个banner的width值。但这样图片会变形的(即便你用等比例缩放,但是放大后图片失真了)

一般的解决方案。采用定长定宽的布局。规划好页面的各部分元素大小。精确到px。然后整体居中,两侧留白。这样分辨率不一样,只会影响留白部分的大小。居中部分在各分辨率下显示效果一致。

另一种解决方案比较少用。就是采用流式布局。页面的各部分都是按照百分比去设置的。这样分辨率不一样的情况下。效果都是一致的。但是比较难以掌控。编码难度大,测试困难。因此较少采用。

另外,针对不同移动设备下,不同分辨率通常采用服务端判断设备类型,然后加载相应css去实现不同设备访问自适应。

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

首先,在网页代码的头部,加入一行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选择加载。祝你好运!