正文 1151字数 63,525阅读

在移动端中我们经常碰到横屏竖屏的问题,那么我们应该如何去判断或者针对横屏、竖屏来写不同的代码呢。
这里有两种方法:
一:CSS判断横屏竖屏
写在同一个CSS中
@media screen and (orientation: portrait) { /*竖屏 css*/ } @media screen and (orientation: landscape) { /*横屏 css*/ }
Run code
Cut to clipboard

    分开写在2个CSS中
    竖屏
    <link rel="stylesheet" media="all and (orientation:portrait)" href="portrait.css">
    Run code
    Cut to clipboard
      横屏
      <link rel="stylesheet" media="all and (orientation:landscape)" href="landscape.css">
      Run code
      Cut to clipboard

        二:JS判断横屏竖屏
        //判断手机横竖屏状态: 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这个参数,通过这个参数可以判断出手机是处在横屏还是竖屏状态。
        Run code
        Cut to clipboard

          屏幕方向对应的window.orientation值: ipad,iphone: 90 或 -90 横屏 ipad,iphone: 0 或180 竖屏 Andriod:0 或180 横屏 Andriod: 90 或 -90 竖屏
          Run code
          Cut to clipboard