您的位置:首页 > 产品设计 > UI/UE

CCS3 @media实现响应式布局

2016-04-29 17:49 603 查看
Media query 是CSS3中的新特性,通过@media规则,它允许一段CSS代码在特定条件下才生效。
什么意思?
看下面代码
@media (max-width: 320px)
{
#footer
{
font-size:13px;
}
}
只有当浏览器宽度小于320px时,#footer的字体大小才会设置为13px

--------------------------
以前我们可能要为不同的设备比如desktop/mobile分别设置css文件。
那么现在看看利用@media可以这么做
/* For desktop: */
.col-1 {width: 30%;}
.col-2 {width: 10%;}
.col-3 {width: 20%;}
.col-4 {width: 40%;}

@media (max-width: 768px) {
/* For mobile phones: */
[class*="col-"] {
width: 100%;
}
}
是不是方便了很多,这样就可以把所有样式放到一个文档里了。
---------------------
很简单是不是,还有几个注意事项要提醒大家

手机样式优先
意味着手机样式写在桌面或其他设备样式的前面,这样能提高小型设备上的渲染速度
上面的例子就应该这样写

/* For mobile phones: */
[class*="col-"] {
width: 100%;
}

@media (min-width: 768px) {
/* For desktop: */
.col-1 {width: 30%;}
.col-2 {width: 10%;}
.col-3 {width: 20%;}
.col-4 {width: 40%;}
}
首先加载手机样式,当屏幕宽度大于768时加载桌面样式
你可能还要为多种设备添加样式,看下面这个例子
/* For mobile phones: */
[class*="col-"] {
width: 100%;
}
@media (min-width: 768px) and (max-width: 998px){
/* For tablets: */
.col-1 {width: 25%;}
.col-2 {width: 10%;}
.col-3 {width: 15%;}
.col-4 {width: 30%;}
}
@media (min-width: 999px){
/* For desktop: */
.col-1 {width: 30%;}
.col-2 {width: 10%;}
.col-3 {width: 20%;}
.col-4 {width: 40%;}
}
2.你还可以为手持设备的横屏/竖屏做设置
比如为手机设置横屏样式

@media screen and (orientation:landscape) and (max-width: 767px)
设置竖屏样式
@media screen and (orientation:protrait) and (max-width: 767px)
3.分辨率划分的一点建议
手机等小型设备: 320px ~ 479px
大屏手机: 480px ~ 767px
平板设备:768px ~ 1024px
大型平板及PC设备:大于1025px
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  media query CSS3