文档章节

css判断不同分辨率显示不同宽度布局实现自适应宽度

梦梦阁
 梦梦阁
发布于 2015/08/03 11:28
字数 782
阅读 4732
收藏 6

1、DIVCSS小案例描述
我们首先设置一个DIV盒子CSS命名为“.abc”,设置其高度为300px,css边框为黑色;以及设置margin:0 auto布局居中。预先设置这两个样式是为了便于观察。
我 们通过手动拖拽浏览器显示宽度,然后观察此盒子宽度变化情况,当浏览器宽度调节到宽度不大于500px时,对应此盒子宽度显示100px;调节浏览器宽度 不大于901px时,显示“.abc”对应盒子宽度显示200px;当调节浏览器宽度大于1201px时,盒子对象宽度显示1200px;当小于 1200px时候显示宽度为900px。

.abc{ height:300px; border:1px solid #000; margin:0 auto} 
@media screen and (min-width: 1201px) { 
.abc {width: 1200px}  
} 
/* css注释:设置了浏览器宽度不小于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排错将导致判断失效。

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="utf-8" /> 
<title>无标题文档</title> 
<style> 
.abc{ height:300px; border:1px solid #000; margin: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: 900px) { 
.abc {width: 200px;}  
} 
/* 设置了浏览器宽度不大于900px时 abc 显示200px宽度 */ 
 
@media screen and (max-width: 500px) { 
.abc {width: 100px;}  
} 
/* 设置了浏览器宽度不大于500px时 abc 显示100px宽度 */ 
 
</style> 
</head> 
<body> 
<div class="abc">DIVCSS5实例:我这个DIV宽度会随浏览器宽度变化哦,试试改变浏览器宽度</div> 
</body> 
</html>

4、为了兼容IE9以下版本浏览器需要加入一个google的JS,当然可以下载引人html

<!--[if lt IE 9]> 
<script src="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script> 
<![endif]-->

5.完美兼容

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="utf-8" /> 
<title>无标题文档</title> 
<style> 
.abc{ height:300px; border:1px solid #000; margin:0 auto} 
@media screen and (min-width: 1201px) { 
.abc {width: 1200px}  
} 
/* css 注释说明:设置了浏览器宽度不小于1201px时 abc 显示1200px宽度 */ 
 
@media screen and (max-width: 1200px) { 
.abc {width: 900px}  
} 
/* 设置了浏览器宽度不大于1200px时 abc 显示900px宽度 */ 
 
@media screen and (max-width: 900px) { 
.abc {width: 200px;}  
} 
/* 设置了浏览器宽度不大于900px时 abc 显示200px宽度 */ 
 
@media screen and (max-width: 500px) { 
.abc {width: 100px;}  
} 
/* 设置了浏览器宽度不大于500px时 abc 显示100px宽度 */ 
 
</style> 
<!--[if lt IE 9]> 
<script src="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script> 
<![endif]--> 
</head> 
<body> 
<div class="abc">DIVCSS5实例:我这个DIV宽度会随浏览器宽度变化哦,试试改变浏览器宽度</div> 
</body> 
</html>


© 著作权归作者所有

梦梦阁
粉丝 27
博文 308
码字总数 174724
作品 0
嘉定
高级程序员
私信 提问
CSS判断不同分辨率显示不同宽度布局CSS3技术支持IE6到IE8

CSS判断不同分辨率浏览器(显示屏幕)显示不同宽度布局CSS3技术支持IE6到IE8。将用到css3 @media样式进行判断,但IE9以下版本不支持CSS3技术,这里DIVCSS5给大家介绍通过JS实现低版本的浏览器...

zchuanzhao
2016/07/15
52
0
响应式布局的常用解决方案对比(媒体查询、百分比、rem和vw/vh)

我的博客原文地址:原文地址 简要介绍:前端开发中,静态网页通常需要适应不同分辨率的设备,常用的自适应解决方案包括媒体查询、百分比、rem和vw/vh等。本文从px单位出发,分析了px在移动端...

yuxiaoliang
2018/07/02
0
0
浅谈Web自适应

前言 随着移动设备的普及,移动web在前端工程师们的工作中占有越来越重要的位置。移动设备更新速度频繁,手机厂商繁多,导致的问题是每一台机器的屏幕宽度和分辨率不一样。这给我们在编写前端...

数通畅联
2016/08/19
99
0
自适应网页设计/响应式Web设计2

随着3G的普及,越来越多的人使用手机上网。 移动设备正超过桌面设备,成为访问互联网的最常见终端。于是,网页设计师不得不面对一个难题:如何才能在不同大小的设备上呈现同样的网页? 手机的...

山哥
2012/05/25
178
0
自适应网页设计的方法(手机端良好的访问体验)

昨天中午Google进行了一次在线讲座,讲述自适应网页设计的概念和方法,维护同一个网页代码,即可使网站在多种浏览设备(从桌面电脑显示器到智能手机或其他移动产品设备)上具有更好的阅读体验...

DanielYue
2018/06/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

链表中环的入口节点

给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。 思路: public ListNode EntryNodeOfLoop(ListNode pHead) { if (pHead == null || pHead.next == null) ...

Garphy
9分钟前
2
0
Spring5 源码分析-容器刷新-invokeBeanFactoryPostProcessors()方法

上一篇:Spring5 源码分析-容器刷新-prepareBeanFactory()方法 该方法主要完成以下功能: 1.实例化ConfigurationClassPostProcessor,并调用ConfigurationClassPostProcessor.postProcessBe...

特拉仔
9分钟前
3
0
为什么MySQL用B+树做索引

索引这个词,相信大多数人已经相当熟悉了,很多人都知道MySQL的索引主要以B+树为主,但是要问到为什么用B+树,恐怕很少有人能把前因后果讲述的很完整。本文就来从头到尾介绍下数据库的索引。...

小致Daddy
34分钟前
4
0
网站前台的三级联动数据封装

我在进行项目时候遇到了一个进行数据封装的一个功能,进行数据的封装的功能也挺复杂,来回试了好几十种方法.最后使用的是这种方法. 使用一个pojo进行封装两个数据,一个是list一个是实体类. 具体...

小天丶羽
37分钟前
4
0
创龙基于TI AM437x ARM Cortex-A9 + Xilinx Spartan-6 FPGA的SPI FLASH、硬件加密芯片

TL437xF-EVM是一款广州创龙基于TI AM437x ARM Cortex-A9 + Xilinx Spartan-6 FPGA设计的开发板,底板采用沉金无铅工艺的4层板设计,尺寸为240mm*130mm,它为用户提供了SOM-TL437xF核心板的测...

Tronlong创龙
39分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部