在[使用jqMobi开发app基础:Grid布局 ](http://blog.csdn.net/xuexiaodong009/article/details/18351517)中介绍了[Grid布局](http://blog.csdn.net/xuexiaodong009/article/details/18351517),col2在大的屏幕上会显示为两列,col3会显示为3列,但如果屏幕小就会显示为一列,这就是响应式布局,也就是根据屏幕大小,动态改变css样式的一种布局。这种布局的关键字是@media
在af.ui.css文件中搜索media找到如下css样式:
~~~
#afui .col2,
#afui .col3,
#afui .col1-3,
#afui .col2-3 {
float: none;
width: 100%;
}
#afui .grid:after {
content: '';
clear: both;
}
@media handheld, only screen and (min-width: 768px) {
#afui .col2 {
width: 50%;
float: left;
}
#afui .col3 {
width: 33.3%;
float: left;
}
#afui .col1-3 {
width: 33.3%;
float: left;
}
#afui .col2-3 {
width: 66.6%;
float: left;
}
}
~~~
可以清楚的看到,col2,col3,col1-3,col2-3 默认宽度都是100%,也就是单行显示,
只有在屏幕宽度最小宽度大于768px时,才会变成多列。
这样就解释了,为什么相同的代码,会因为屏幕大小而显示不同的布局。也解释了官网的那句话。
On phones, the grid system will always default to a single row. On tablets, the grid will display inline.
响应式布局css需要注意的是css样式的空格一定不能少,否则就会导致没有效果
~~~
@media screen and (min-width: 320px) and (max-width : 479px)
~~~
[响应式布局参考文章](http://baike.baidu.com/link?url=xOQQtsZOBMUy_mcwNzjF8CeT5-1JONKwb2BGVWlg8awG9FjbvPQmeeZY-2D8JS21cOluMe2IMRh_Uy_c9NTR6_)
- 前言
- 使用jqMobi开发app基础
- jqMobi开发app页面注意事项
- 使用jqMobi开发app基础:定义header
- 使用jqMobi开发app基础:定义footer
- 使用jqMobi开发app基础:通过panel添加内容
- 使用jqMobi开发app基础:panel属性data-defer介绍
- 使用jqMobi开发app基础:Side Menu
- 使用jqMobi开发app基础:Styled Lists布局
- 使用jqMobi开发app基础:Grid布局
- 使用jqMobi开发app基础:响应式布局介绍
- 使用jqMobi开发app基础:Toggle Switches开关按钮
- 使用jqMobi开发app基础:HTML5 LocalStorage 本地存储
- 使用jqMobi开发app基础:登录页面的实现
- 使用jqMobi开发app基础:注销页面的实现
- 使用jqMobi开发app基础:viewport指令
- 使用jqMobi开发app基础:a标签的使用
- 使用jqMobi开发app基础:Scrolling的使用,向上向下拖动,动态添加数据
- 使用jqMobi开发app基础:页面传值方式
- 使用jqMobi开发app基础:panel之间的跳转方式
- 使用jqMobi开发app基础:panel之间的跳转方式总结
- 使用jqMobi开发app基础:下拉select
- 使用jqMobi开发app基础:真的只能存在一个DOM吗?
- 使用jqMobi开发app基础:使用 jQuery
- 使用jqMobi开发app基础:Scrolling的使用,拖动后大量空白的解决方法
- 使用jqMobi开发app基础:Scrolling的使用,停止和继续拖动有关的问题
- 使用jqMobi开发app基础:Badge的使用
- 使用jqMobi开发app基础:如何拨打电话?
- 使用jqMobi开发app基础:弹出内容的设计