设为首页收藏本站关注微信<<< 抵制 IE6 人人有责 >>>
搜索
热搜: 活动 交友 discuz
查看: 2703|回复: 0
打印 上一主题 下一主题

[CSS3] 运用@media实现网页自适应中的几个关键分辨率

[复制链接]
跳转到指定楼层
楼主
发表于 2015-9-9 14:32:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
经常为不同分辨率设备或不同窗口大小下布局错位而头疼,可以利用@media screen实现网页布局的自适应,但是怎样兼容所有主流设备就成了问题。到底分辨率是多少的时候设置呢?

看下面的代码,这是从bootstrap中遍历出来的,min-width来确认分别是
768、992、1200。当然了过去也有些设备宽度是600 480的,哪些小分辨率的我们都归类为小于767的。为什么是小于767而不是768呢,那是因为在css中@media (min-width: 768px)表示最小是768也就是>=768,这里有等于,所以我们判断更小的设备用@media (max-width: 767px)这边表示<=767就不会有冲突了
运用@media实现网页自适应中的几个关键分辨率

从上面我们可以看出有几个临界点的分辨率,那么我们就可以轻松的来写自己的自适应代码了
@media (min-width: 768px){ //>=768的设备 }
@media (min-width: 992px){ //>=992的设备 }
@media (min-width: 1200){ //>=1200的设备 }


注意下顺序,如果你把@media (min-width: 768px)写在了下面那么很悲剧,
@media (min-width: 1200){ //>=1200的设备 }
@media (min-width: 992px){ //>=992的设备 }
@media (min-width: 768px){ //>=768的设备 }


因为如果是1440,由于1440>768那么你的1200就会失效。
所以我们用min-width时,小的放上面大的在下面,同理如果是用max-width那么就是大的在上面,小的在下面
@media (max-width: 1199){ //<=1199的设备 }
@media (max-width: 991px){ //<=991的设备 }
@media (max-width: 767px){ //<=768的设备 }


经过了上面的入门学习,我们就可以灵活的来点高级的混合应用了
[CSS] 纯文本查看 复制代码
@media screen and (min-width:1200px) {
#page {
	width: 1100px;
}
#content, .div1 {
	width: 730px;
}
#secondary {
	width: 310px
}
}
@media screen and (min-width: 960px) and (max-width: 1199px) {
#page {
	width: 960px;
}
#content, .div1 {
	width: 650px;
}
#secondary {
	width: 250px
}
select {
	max-width: 200px
}
}
@media screen and (min-width: 768px) and (max-width: 959px) {
#page {
	width: 900px;
}
#content, .div1 {
	width: 620px;
}
#secondary {
	width: 220px
}
select {
	max-width: 180px
}
}
@media only screen and (min-width: 480px) and (max-width: 767px) {
#page {
	width: 450px;
}
#content, .div1 {
	width: 420px;
	position: relative;
}
#secondary {
	display: none
}
#access {
	width: 450px;
}
#access a {
	padding-right: 5px
}
#access a img {
	display: none
}
#rss {
	display: none
}
#branding #s {
	display: none
}
}
@media only screen and (max-width: 479px) {
#page {
	width: 300px;
}
#content, .div1 {
	width: 300px;
}
#secondary {
	display: none
}
#access {
	width: 330px;
}
#access a {
	padding-right: 10px;
	padding-left: 10px
}
#access a img {
	display: none
}
#rss {
	display: none
}
#branding #s {
	display: none
}
#access ul ul a {
	width: 100px
}
}


上面的代码中用到了 screen这里指定了显示器为显示设备,也可以是print打印机等其他设备,一般我们用screen。或者干脆省略。如果想看详细的关于media的说明可以百度一下关于media query的知识

本帖被以下淘专辑推荐:

  • · 常用|主题: 22, 订阅: 0
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享淘帖1
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

QQ|手机版|Archiver|源于生活(个人生活娱乐工作的笔记)css3,html5,学习笔记    

GMT+8, 2024-11-23 20:35 , Processed in 0.124800 second(s), 28 queries .

Powered by Mr.Kevin-ying

© 2004-2015

快速回复 返回顶部 返回列表