前端判断横屏还是竖屏

在移动端中我们经常碰到横屏竖屏的问题,那么我们应该如何去判断或者针对横屏、竖屏来写不同的代码呢。
首先在head中加入如下代码:


1

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

针对上述viewport标签有如下说明
1)、content中的width指的是虚拟窗口的宽度。

2)、user-scalable=no就一定可以保证页面不可以缩放吗?NO,有些浏览器不吃这一套,还有一招就是minimum-scale=1.0, maximum-scale=1.0 最大与最小缩放比例都设为1.0就可以了。

3)、initial-scale=1.0 初始缩放比例受user-scalable控制吗?不一定,有些浏览器会将user-scalable理解为用户手动缩放,如果user-scalable=no,initial-scale将无法生效。

4)、手机页面可以触摸移动,但是如果有需要禁止此操作,就是页面宽度等于屏幕宽度是页面正好适应屏幕才可以保证页面不能移动。

5)、如果页面是经过缩小适应屏幕宽度的,会出现一个问题,当文本框被激活(获取焦点)时,页面会放大至原来尺寸。

一:CSS判断横屏竖屏

写在同一个CSS中


1

2

3

4

5

6

@media screen and (orientation: portrait) {

  /*竖屏 css*/

}

@media screen and (orientation: landscape) {

  /*横屏 css*/

}

分开写在2个CSS中
竖屏


1

<link rel="stylesheet" media="all and (orientation:portrait)" href="portrait.css">

横屏


1

<link rel="stylesheet" media="all and (orientation:landscape)" href="landscape.css">

一:JS判断横屏竖屏


01

02

03

04

05

06

07

08

09

10

//判断手机横竖屏状态:

window.addEventListener("onorientationchange" in window ? "orientationchange" "resize"function() {

        if (window.orientation === 180 || window.orientation === 0) {

            alert(‘竖屏状态!‘);

        }

        if (window.orientation === 90 || window.orientation === -90 ){

            alert(‘横屏状态!‘);

        

    }, false);

//移动端的浏览器一般都支持window.orientation这个参数,通过这个参数可以判断出手机是处在横屏还是竖屏状态。

时间: 2024-08-27 18:34:36

前端判断横屏还是竖屏的相关文章

android 强制设置横屏 判断是横屏还是竖屏

判断activity 是横屏还是竖屏  方法 1: //根据设备配置信息 Configuration cf= this.getResources().getConfiguration(); //获取设置的配置信息 int ori = cf.orientation ; //获取屏幕方向 if(ori == cf.ORIENTATION_LANDSCAPE){   //横屏 }else if(ori == cf.ORIENTATION_PORTRAIT){  //竖屏 }   方法2: 通过设备分辨

js判断手机浏览器是横屏or竖屏

移动端的浏览器一般都支持window.orientation这个参数,通过这个参数可以判断出手机是处在横屏还是竖屏状态. 从而根据实际需求而执行相应的程序.通过添加监听事件onorientationchange,进行执行就可以了. //判断手机横竖屏状态: function hengshuping(){ if(window.orientation==180||window.orientation==0){ alert("竖屏状态!") } if(window.orientation==

使用JavaScript判断手机处于横屏还是竖屏

移动端的浏览器一般都支持window.orientation这个参数,通过这个参数可以判断出手机是处在横屏还是竖屏状态.从而根据实际需求而执行相应的程序.通过添加监听事件onorientationchange,进行执行就可以了. //判断手机横竖屏状态: function hengshuping(){ if(window.orientation==180||window.orientation==0){ alert("竖屏状态!") } if(window.orientation==9

android手机横屏和竖屏与android:configChanges

原文地址:http://woshixy.blog.51cto.com/5637578/1081913 目前大多数手机都支持重力感应随之而来的就是屏幕方向改变的问题.对应普通开发者来说屏幕的随意改变也会带来困扰.在Google自带的doc里可以看到,如果设备的配置(Resources.Configuration中进行了定义)发生改变,那么所有用户界面上的东西都需要进行更新以适应新的配置.因为Activity是与用户交互的最主要的机制,它包含了处理配置改变的专门支持.除非你特殊指定,否则当配置发生改

让activity保持横屏或者竖屏

让activity保持横屏或者竖屏有两种方式,一种是在activity的AndroidManifest.xml中设置 <activity android:name=".MainActivity" android:label="@string/app_name" <!--设置横屏 竖屏为portrait--> android:screenOrientation="landscape" > <intent-filter&

android设置横屏和竖屏的方法

方法一:在AndroidManifest.xml中配置 假设不想让软件在横竖屏之间切换,最简单的办法就是在项目的AndroidManifest.xml中找到你所指定的activity中加上android:screenOrientation属性.他有下面几个參数: "unspecified":默认值 由系统来推断显示方向.判定的策略是和设备相关的,所以不同的设备会有不同的显示方向. "landscape":横屏显示(宽比高要长) "portrait"

quick-cocos2d-x 3.3rc0 与 2.2.5的区别(三)真机上设置横屏与竖屏

今天把样例编译的真机上,发现是横屏显示,我在模拟器上是竖屏显示的.按照2.2.5版本修改属性后还是没有改变,最后发现3.3rc0有所改动! 2.2.5版本,在真机上显示横屏与竖屏,只需在java层修改android:screenOrientation属性,竖屏:portrait:横屏:landscape: 3.3rc0版本,多了如下代码: 因为这个导致修改android:screenOrientation属性无效了,nativeIsLandScape是个什么东西呢?在java层声明如下: pri

android界面横屏和竖屏的切换

关于android横屏和竖屏的切换网上给了很多种.但是有些介绍的方法都是在android旧版本上. 我现在把握用到的情况写下来用于备忘: android 版本:4.0 - 4.4 要求:android 横竖屏转换时不需要重新调用oncreate方法 步骤: 1.在Androidmenifest相应的activity里面添加 android:configChanges="orientation|keyboardHidden|screenSize" 2.在代码中比如(RoomActivit

(转)Android强制设置横屏或竖屏

全屏 在Activity的onCreate方法中的setContentView(myview)调用之前添加下面代码 requestWindowFeature(Window.FEATURE_NO_TITLE);//隐藏标题 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);//设置全屏 横屏 按照下面代码示例修改Activity的o