使用CSS3来匹配横屏竖屏的简单方法


Posted in HTML / CSS onAugust 04, 2015

写在同一个CSS中
 
CSS Code复制内容到剪贴板

  1. @media screen and (orientation: portrait) {   
  2.   /*竖屏 css*/  
  3. }    
  4. @media screen and (orientation: landscape) {   
  5.   /*横屏 css*/  
  6. }  

分开写在2个CSS中
竖屏
 

CSS Code复制内容到剪贴板
  1. <link rel="stylesheet" media="all and (orientation:portrait)" href="portrait.css">  

横屏
 

CSS Code复制内容到剪贴板
  1. <link rel="stylesheet" media="all and (orientation:landscape)" href="landscape.css">  

应用的地方

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

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

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

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

HTML / CSS 相关文章推荐
CSS3教程(2):网页边框半径和网页圆角
Apr 02 HTML / CSS
css3 中translate和transition的使用方法
Mar 26 HTML / CSS
详解Canvas 实现炫丽的粒子运动效果(粒子生成文字)
Feb 01 HTML / CSS
html标签之Object和EMBED标签详解
Jul 04 HTML / CSS
html5 的a标签 Href 拨电话的写法
Nov 04 HTML / CSS
Html5无刷新修改browser Url的方法
Jan 15 HTML / CSS
基于html5绘制圆形多角图案
Apr 21 HTML / CSS
深入理解HTML的FormData对象
May 17 HTML / CSS
HTML5制作表格样式
Nov 15 HTML / CSS
详解移动端HTML5页面端去掉input输入框的白色背景和边框(兼容Android和ios)
Dec 15 HTML / CSS
HTML5新标签兼容——&gt; 的两种方法
Sep 12 HTML / CSS
Canvas多边形绘制的实现方法
Aug 05 HTML / CSS
CSS3的一个简单导航栏实现
Aug 03 #HTML / CSS
使用CSS3和Checkbox实现JQuery的一些效果
Aug 03 #HTML / CSS
CSS3中的clip-path使用攻略
Aug 03 #HTML / CSS
利用SVG和CSS3来实现一个炫酷的边框动画
Jul 22 #HTML / CSS
CSS3中的content属性使用示例
Jul 20 #HTML / CSS
详解CSS3中border-image的使用
Jul 18 #HTML / CSS
CSS3中颜色线性渐变实战
Jul 18 #HTML / CSS
You might like
PHP 字符截取 解决中文的截取问题,不用mb系列
2009/09/29 PHP
PHP Warning: PHP Startup: Unable to load dynamic library \ D:/php5/ext/php_mysqli.dll\
2012/06/17 PHP
基于PHP5魔术常量与魔术方法的详解
2013/06/13 PHP
php保存二进制原始数据为图片的程序代码
2014/10/14 PHP
基于yaf框架和uploadify插件,做的一个导入excel文件,查看并保存数据的功能
2017/01/24 PHP
php实现简单加入购物车功能
2017/03/07 PHP
解读IE和firefox下JScript和HREF的执行顺序
2008/01/12 Javascript
JavaScript 布尔操作符解析  &amp;&amp; || !
2012/08/10 Javascript
js实现鼠标经过表格行变色的方法
2015/05/12 Javascript
jQuery基于$.ajax设置移动端click超时处理方法
2016/05/14 Javascript
jQuery实现的tab标签切换效果示例
2016/09/05 Javascript
node+express制作爬虫教程
2016/11/11 Javascript
AngularJS入门教程一:路由用法初探
2017/05/27 Javascript
Angular中ng-repeat与ul li的多层嵌套重复问题
2017/07/24 Javascript
JS使用tofixed与round处理数据四舍五入的区别
2017/10/25 Javascript
详解基于Koa2开发微信二维码扫码支付相关流程
2018/05/16 Javascript
20个最常见的jQuery面试问题及答案
2018/05/23 jQuery
基于mpvue小程序使用echarts画折线图的方法示例
2019/04/24 Javascript
Vue.js构建你的第一个包并在NPM上发布的方法步骤
2019/05/01 Javascript
如何配置vue.config.js 处理static文件夹下的静态文件
2020/06/19 Javascript
javascript实现前端成语点击验证优化
2020/06/24 Javascript
[58:37]Serenity vs Fnatic 2018国际邀请赛淘汰赛BO1 8.21
2018/08/22 DOTA
[01:42]DOTA2 – 虚无之灵
2019/08/25 DOTA
Python pymongo模块常用操作分析
2018/09/01 Python
python得到qq句柄,并显示在前台的方法
2018/10/14 Python
Python Flask框架实现简单加法工具过程解析
2020/06/03 Python
python中zip()函数遍历多个列表方法
2021/02/18 Python
css3新单位vw、vh的使用教程
2018/03/23 HTML / CSS
使用HTML5捕捉音频与视频信息概述及实例
2018/08/22 HTML / CSS
生物医学工程专业学生求职信范文分享
2013/12/14 职场文书
放飞蜻蜓反思
2014/02/05 职场文书
党员群众路线承诺书
2014/05/20 职场文书
刑事和解协议书范本
2014/11/19 职场文书
将图片保存到mysql数据库并展示在前端页面的实现代码
2021/05/02 MySQL
写好Python代码的几条重要技巧
2021/05/21 Python
Redis入门基础常用操作命令整理
2022/06/01 Redis