参考https://www.w3cschool.cn/responsive/8w9adozt.htmlcss
总结:对于通栏,大于等于2栏的等分排版建议采用弹性布局;大于等于2栏的非等分排版建议采用混合布局;html
布局响应,对页面进行响应式的设计实现,须要对相同内容进行不一样宽度的布局设计,有两种方式:桌面优先(从桌面端开始向下设计);移动优先(从移动端向上设计);前端
不管基于那种模式的设计,要兼容全部设备,布局响应时不可避免地须要对模块布局作一些变化(发生布局改变的临界点称之为断点), 咱们经过JS获取设备的屏幕宽度,来改变网页的布局,这一过程咱们能够称之为布局响应屏幕。常见的主要有以下几种方式:css3
布局不变,对模块内的内容进行1.挤压-拉伸;2. 换行-平铺;3. 删减-增长;chrome
布局改变,主要有:1.模块位置变换;2.模块展现方式改变:隐藏-展开;3.模块数量改变:删减-增长;浏览器
(要注意最大宽度时从大到小,最小宽度时从小到大,不然样式优先级问题)框架
字符间以空格相连,选取条件包含在小括号内,多种设备用逗号分隔,这一点继承了css基本语法。ide
超小屏幕<768px;小屏幕>=768px;中等屏幕>=992px;大屏幕设备>=1200px布局
例子优化
/*屏宽大于或等于480px小于1024px以及垂直放置设备的css样式。*/
例子
注意:(最好在样式表中使用,在style标签中使用IE6.7不兼容)
例子:
使用@media 查询,你能够针对不一样的媒体类型定义不一样的样式。
参考http://www.runoob.com/cssref/css3-pr-mediaquery.html
https://www.w3cplus.com/content/css3-media-queries
媒体特性 | 取值 | min/max | 描述 |
width | <length> | yes | 定义输出设备中的页面可见区域宽度 |
height | <length> | yes | 定义输出设备中的页面可见区域高度 |
device-width | <length> | yes | 定义输出设备的屏幕可见宽度 |
device-height | <length> | yes | 定义输出设备的屏幕可见高度 |
orientation | portrait 竖屏
landscape横屏 |
no | 定义'height'是否大于或等于'width'。
值portrait表明是---竖屏,landscape表明否---横屏 |
aspect-ratio | <ratio> | yes | 定义'width'与'height'的比率 |
device-aspect-ratio | <ratio> | yes | 定义'device-width'与'device-height'的比率。如常见的显示器比率:4/3, 16/9, 16/10 |
color | <integer> | yes | 定义每一组输出设备的彩色原件个数。若是不是彩色设备,则值等于0 |
color-index | <integer> | yes | 定义在输出设备的彩色查询表中的条目数。若是没有使用彩色查询表,则值等于0 |
monochrome | <integer> | yes | 定义在一个单色框架缓冲区中每像素包含的单色原件个数。若是不是单色设备,则值等于0 |
resolution | <resolution> | yes | 定义设备的分辨率。如:96dpi, 300dpi, 118dpcm |
scan | progressive | interlace | no | 定义电视类设备的扫描工序
progressive:连续扫描;interlace:交织扫描 |
grid | <integer> | no | 用来查询输出设备是否使用栅格或点阵。只有1和0才是有效值,1表明是,0表明否 |
viewport 是用户网页的可视区域。
viewport 翻译为中文能够叫作"视区"。
手机浏览器是把页面放在一个虚拟的"窗口"(viewport)中,一般这个虚拟的"窗口"(viewport)比屏幕宽,这样就不用把每一个网页挤到很小的窗口中(这样会破坏没有针对手机浏览器优化的网页的布局),用户能够经过平移和缩放来看网页的不一样部分。
可能的值:
此属性为文档兼容模式声明,表示若是在IE浏览器下则使用最新的标准渲染当前文档
X-UA-Compatible是自从IE8新加的一个设置,对于IE8如下的浏览器是不识别的。
IE=edge 告诉IE,IE8之后的版本使用最新版本的引擎渲染网页;
chrome=1安装了GCF后能够激活Chrome Frame.
emmet快捷键:meta:compat
最后说下IE浏览器,由于他不支持media Queries的,使用时须要引用一个Media Query Javascript解决,以下