响应式开发从原理到实战案例(五):使用媒体查询改进响应式页面
来源:互联网 发布:js获取上传文件的md5 编辑:程序博客网 时间:2024/05/22 03:35
前面使用JS来实现响应式的页面,有了媒体查询可以这样改进了
在link标签上使用媒体查询,不需要编写那么JS代码:
<link media="screen and (min-width:620px)" href="../css/index-large-screen.css" type="text/css" rel="stylesheet"/><link media="screen and (max-width:621px)" href="../css/index-small-screen.css" type="text/css" rel="stylesheet"/>
在link标签上用media属性指定媒体查询的内容,条件符合的则引入样式文件。不需要写JS代码。
但也存在问题,能不能不使用两个样式文件,从性能上讲,发生两次请求没有发生一次请求好!那么怎样合并两个样式文件的内容了?答案是在样式文件里使用@media媒体查询,媒体查询其实就是对设备的一种检测条件,将检测的逻辑放到了CSS样式,不在用js那么复杂。
/*媒体查询,宽屏*/@media screen and (min-width: 620px) { .header-wrapper .nav-list li{ float: left; } .more-list button{ display: none; }}/*媒体查询,窄屏*/@media screen and (max-width: 620px) { /*对展开列表定位、设置背景颜色*/ .header-wrapper .nav-collapse{ position: relative; top:40px; background-color: #3c3f41; } /*列表第一个元素除外列表上边距为1.2px*/ .header-wrapper .nav-list li:not(:first-child){ margin-top: 1.2px; } .more-list button{ display:block; }}使用@media媒体查询解决了几个重要问题
1.丢弃js的逻辑代码,由媒体查询条件来控制
2.不需要编写多个样式文件,在一个样式文件就能完成
~~~~~~~~~~~~~~~~~下一节《使用框架bootstrap完成响应式》~~~~~~~~~~~~~~~~~
0 0
- 响应式开发从原理到实战案例(五):使用媒体查询改进响应式页面
- 响应式开发从原理到实战案例(四):媒体查询语法介绍
- 响应式开发从原理到实战案例(三):静态页面转响应式页面
- 响应式开发从原理到实战案例(七):使用bootstrap V2.3.2实现响应式页面
- 响应式开发从原理到实战案例(八):使用bootstrap V3.3.7实现响应式页面
- 响应式开发从原理到实战案例(九):响应式改版完整案例-静态页面制作
- 响应式开发从原理到实战案例(十三):响应式改版完整案例-页脚
- 响应式开发从原理到实战案例(十五):响应式改版完整案例-完结
- 响应式开发从原理到实战案例(二):制作没有响应式的静态页面
- 响应式开发从原理到实战案例(一):响应式基本概述
- 响应式开发从原理到实战案例(十):响应式改版完整案例-头部列表
- 响应式开发从原理到实战案例(十一):响应式改版完整案例-头部菜单
- 响应式开发从原理到实战案例(十二):响应式改版完整案例-文章列表
- 响应式开发从原理到实战案例(十四):响应式改版完整案例-图片处理
- 响应式开发从原理到实战案例(六):bootstrap框架介绍
- 响应式页面之媒体查询二
- 响应式开发中的媒体查询
- 前端开发响应式设计之媒体查询(bootstrap)
- Spring MVC测试框架详解——服务端测试
- 题目-打印沙漏
- c程序语言 习题1-13
- 声明与定义
- CSS:多行文本水平垂直居中,少于一行文本居中,多余一行文本居左(试用于对话提示框)
- 响应式开发从原理到实战案例(五):使用媒体查询改进响应式页面
- ext4文件系统错误处理机制
- 如何在springMVC 中对REST服务使用mockmvc 做测试
- KJDP 页面跳转
- 谷歌浏览器无法播放背景音乐问题。
- 沉思录:穷则思,思则变
- 最详细的nginx安装文档
- Embedded Jetty IllegalStateException: Committed jsp重复提交问题
- 从 MVC 到前后端分离