hlfsunshine 2018-05-11
CSS判断不同分辨率浏览器(显示屏幕)显示不同宽度布局CSS3技术支持IE6到IE8。将用到css3@media样式进行判断,但IE9以下版本不支持CSS3技术,这里DIVCSS5给大家介绍通过JS实现低版本的浏览器也支持CSS3实现实用布局
CSSDIV网页布局中当分辨率小于等于1024px(像素)时,DIV布局对象显示1000px宽度,当分辨率大于1024px时候显示1200px宽度等需求。使用CSS实现改变浏览器显示宽度从而实现布局的网页宽度动态改变变化(网页宽度自动随浏览器显示宽度而变宽变窄)。
随着发展,越来越多的电脑用户显示屏分辨率越来越高,但有的用户还是使用1024px的分辨率的显示屏(根据几个浏览器分辨率统计平台得到数据现在使用1200分辨率以下用户极少,但我们CSS布局时仍然需要至少考虑1024px分辨率用户),如果网页布局宽度固定到1200px,1024分辨率用户浏览网页时浏览器下方会出现滚动条,为了解决这个问题,大家可以通过使用CSS3样式判断用户浏览器宽度从而调用不同布局宽度。
使用CSS单词与语法
@mediascreenand(判断属性){CSS样式选择器}
这里注意花括号里装要变化CSS样式选择器。
三、不同分辨率显示不同宽度样式案例
1、DIVCSS小案例描述
我们首先设置一个DIV盒子CSS命名为“.abc”,设置其高度为300px,css边框为黑色;以及设置margin:0auto布局居中。预先设置这两个样式是为了便于观察。
我们通过手动拖拽浏览器显示宽度,然后观察此盒子宽度变化情况,当浏览器宽度调节到宽度不大于500px时,对应此盒子宽度显示100px;调节浏览器宽度不大于901px时,显示“.abc”对应盒子宽度显示200px;当调节浏览器宽度大于1201px时,盒子对象宽度显示1200px;当小于1200px时候显示宽度为900px。
2、CSS代码
代码如下:
.abc{height:300px;border:1pxsolid#000;margin:0auto}
@mediascreenand(min-width:1201px){
.abc{width:1200px}
}
/*css注释:设置了浏览器宽度不小于1201px时abc显示1200px宽度*/
@mediascreenand(max-width:1200px){
.abc{width:900px}
}
/*设置了浏览器宽度不大于1200px时abc显示900px宽度*/
@mediascreenand(max-width:901px){
.abc{width:200px;}
}
/*设置了浏览器宽度不大于901px时abc显示200px宽度*/
@mediascreenand(max-width:500px){
.abc{width:100px;}
}
/*设置了浏览器宽度不大于500px时abc显示100px宽度*/
需要注意是CSS代码顺序,由大到小排版CSS(判断浏览器宽度越大越放前),这样是因为逻辑关系,@media判断CSS排错将导致判断失效。
3、HTML代码
代码如下:
<!DOCTYPEhtml>
<html>
<head>
<metacharset="utf-8"/>
<title>无标题文档</title>
<style>
.abc{height:300px;border:1pxsolid#000;margin:0auto}
@mediascreenand(min-width:1201px){
.abc{width:1200px}
}
/*设置了浏览器宽度不小于1201px时abc显示1200px宽度*/
@mediascreenand(max-width:1200px){
.abc{width:900px}
}
/*设置了浏览器宽度不大于1200px时abc显示900px宽度*/
@mediascreenand(max-width:900px){
.abc{width:200px;}
}
/*设置了浏览器宽度不大于900px时abc显示200px宽度*/
@mediascreenand(max-width:500px){
.abc{width:100px;}
}
/*设置了浏览器宽度不大于500px时abc显示100px宽度*/
</style>
</head>
<body>
<divclass="abc">DIVCSS5实例:我这个DIV宽度会随浏览器宽度变化哦,试试改变浏览器宽度</div>
</body>
</html>
4、为了兼容IE9以下版本浏览器需要加入一个google的JS,当然可以下载引人html
代码如下:
<!--[ifltIE9]>
<scriptsrc="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script>
<![endif]-->
将JS代码放入</head>标签前即可,这里直接引人google在线JS,你可以下载此JS文件重新HTML引人即可。
5、完美兼容各大浏览器HTML+CSS+JS源代码
代码如下:
<!DOCTYPEhtml>
<html>
<head>
<metacharset="utf-8"/>
<title>无标题文档</title>
<style>
.abc{height:300px;border:1pxsolid#000;margin:0auto}
@mediascreenand(min-width:1201px){
.abc{width:1200px}
}
/*css注释说明:设置了浏览器宽度不小于1201px时abc显示1200px宽度*/
@mediascreenand(max-width:1200px){
.abc{width:900px}
}
/*设置了浏览器宽度不大于1200px时abc显示900px宽度*/
@mediascreenand(max-width:900px){
.abc{width:200px;}
}
/*设置了浏览器宽度不大于900px时abc显示200px宽度*/
@mediascreenand(max-width:500px){
.abc{width:100px;}
}
/*设置了浏览器宽度不大于500px时abc显示100px宽度*/
</style>
<!--[ifltIE9]>
<scriptsrc="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script>
<![endif]-->
</head>
<body>
<divclass="abc">DIVCSS5实例:我这个DIV宽度会随浏览器宽度变化哦,试试改变浏览器宽度</div>
</body>
</html>
background-color: blue;background-color: yellow;<input type="button" value="变蓝" @click="changeColorT