使用css3匹配手机屏幕横竖状态


Posted in HTML / CSS onJanuary 27, 2014

@media是css3中新定义的,功能非常强大,顾名思义PC是无法匹配横竖屏的,所以orientation只对移动设备起效。

1.头部声明

复制代码
代码如下:

<meta name="viewport" content="width=device-width, initial-scale=1.0,user-scalable=no,maximum-scale=1.0">

加到

复制代码
代码如下:

<head></head>

2. media匹配屏幕是横屏还是竖屏

复制代码
代码如下:

@media all and (orientation : landscape) { </p> <p>/*

这是匹配横屏的状态,横屏时的css代码

*/
body {
background-color: #ff0000;
}
}
@media all and (orientation : portrait){ </p> <p>/*

这是匹配竖屏的状态,竖屏时的css代码

*/
body {
background-color: #00ff00;
}
}

3. 应用的地方

(1)手机WEB页面元素内容一般都是通过百分比定义的,以便能够在不同分辨率设备下都能正常显示,虽然这样,但是移动设备的屏幕分辨率宽度和高度相差还是很大,同样的页面在屏幕翻转过来时可能百分比定义的元素宽度会变得非常大,这样就会失去页面的美观性,这样,如果用orientation匹配屏幕的翻转状态,就可以写不同的css加以控制页面样式。

(2)对于有背景图的移动WEB页面,可以根据orientation匹配屏幕屏幕状态,设置不同的background。

(3)稍微有技术的一点:某些有绝对定位元素的WEB页面,将某元素定位到页面底部,当屏幕是竖屏状态时,可能因为页面总长度小于屏幕高度(但是大于屏幕宽度),这时将绝对定位元素定位到底部是正确的,但是当屏幕翻转成为横屏时,此时因为页面内容高度大于屏幕高度(就是未翻转时屏幕宽度),绝对定位元素会覆盖在页面内容之上,导致页面出现问题,这时可用orientation匹配屏幕状态,调整css代码。

关于匹配屏幕横竖屏状态还可通过JS判断,js中onorientationchange是window的一个事件,可以通过监听事件匹配屏幕横竖屏。

HTML / CSS 相关文章推荐
纯CSS3实现Material Design效果
Mar 09 HTML / CSS
细说CSS3中的选择符
Oct 17 HTML / CSS
CSS3 Pie工具推荐--让IE6-8支持一些优秀的CSS3特性
Sep 02 HTML / CSS
CSS3中使用RGBA设置透明度的示例
Aug 04 HTML / CSS
CSS3实现3D翻书效果
Jun 20 HTML / CSS
10分钟入门CSS3 Animation
Dec 25 HTML / CSS
HTML5之web workers_动力节点Java学院整理
Jul 17 HTML / CSS
详解基于canvas的视频遮罩插件
Jan 04 HTML / CSS
Canvas多边形绘制的实现方法
Aug 05 HTML / CSS
元素水平垂直居中的方式
Mar 31 HTML / CSS
使用CSS实现小三角边框原理解析
Nov 07 HTML / CSS
CSS精灵图的原理与使用方法介绍
Mar 17 HTML / CSS
css3教程之倾斜页面
Jan 27 #HTML / CSS
使用css3制作动感导航条示例
Jan 26 #HTML / CSS
带有css3动画效果的兼容多浏览器简单导航条示例
Jan 26 #HTML / CSS
css3实现的下拉菜单效果示例
Jan 22 #HTML / CSS
css图标制作教程制作云图标
Jan 19 #HTML / CSS
使用简单的CSS3属性实现炫酷读者墙效果
Jan 08 #HTML / CSS
CSS3 Flexbox中flex-shrink属性的用法示例介绍
Dec 30 #HTML / CSS
You might like
PHP中去除换行解决办法小结(PHP_EOL)
2011/11/27 PHP
PHP curl模拟登录带验证码的网站
2015/11/30 PHP
PHP命名空间namespace用法实例分析
2016/09/27 PHP
javascript new 需不需要继续使用
2009/07/02 Javascript
WEB 浏览器兼容 推荐收藏
2010/05/14 Javascript
jquery中append()与appendto()用法分析
2014/11/14 Javascript
JavaScript获得url所有参数键值表的方法
2015/03/21 Javascript
JavaScript通过事件代理高亮显示表格行的方法
2015/05/27 Javascript
Javascript数组Array方法解读
2016/03/13 Javascript
JS 实现Base64编码与解码实例详解
2016/11/07 Javascript
nodejs搭建本地http服务器教程
2017/03/13 NodeJs
Three.js利用orbit controls插件(轨道控制)控制模型交互动作详解
2017/09/25 Javascript
ES6扩展运算符用法实例分析
2017/10/31 Javascript
jQuery实现的点击标题文字切换字体效果示例【测试可用】
2018/04/26 jQuery
微信小程序自定义导航栏(模板化)
2019/11/15 Javascript
vue中keep-alive内置组件缓存的实例代码
2020/04/16 Javascript
vue-axios同时请求多个接口 等所有接口全部加载完成再处理操作
2020/11/09 Javascript
python 切片和range()用法说明
2013/03/24 Python
Python 爬虫爬取指定博客的所有文章
2016/02/17 Python
python入门基础之用户输入与模块初认识
2016/11/14 Python
基于python3实现socket文件传输和校验
2018/07/28 Python
Python使用crontab模块设置和清除定时任务操作详解
2019/04/09 Python
python读取图像矩阵文件并转换为向量实例
2020/06/18 Python
css3动画过渡实现鼠标跟随导航效果
2018/02/08 HTML / CSS
毕业生自我鉴定实例
2014/01/21 职场文书
军人违纪检讨书
2014/02/04 职场文书
产品质量承诺书
2014/03/27 职场文书
读书小明星事迹材料
2014/05/03 职场文书
大学生就业自荐书
2014/06/16 职场文书
竞聘演讲稿开场白
2014/08/25 职场文书
课程设计的心得体会
2014/09/03 职场文书
基层干部个人对照检查及整改措施
2014/10/28 职场文书
学校通报表扬范文
2015/05/04 职场文书
教师培训学习心得体会
2016/01/21 职场文书
十一月早安语录:把心放轻,人生就是一朵自在的云
2019/11/04 职场文书
mysql拆分字符串作为查询条件的示例代码
2022/07/07 MySQL