javascript - 如何在移动旋转时旋转 HTML5 页面

标签 javascript jquery css html

您好,我想在移动设备上旋转 html 页面,所以我有一个 div,它占用屏幕的所有宽度和高度,在 div 内部有一个图像,所以当页面重新调整大小时,图像也会重新调整大小到(以响应方式)我的CSS:

body, html {    
  height: 100%;
}

body {
 background-color: #1E4922;
}

div#cont {
  height: 100%;
}

img#menu {
    display: block;
    margin-left: auto;
    margin-right: auto;
    height: 100%;
}

和 html:

<!DOCTYPE html>

<html>

<head>
    <title>Card Game</title>
    <link rel="stylesheet" type="text/css" href="CSS/style.css">
</head>
<body>      
   <div id="cont">
        <img id="menu" src="static/images/2%20main%20menu.jpg"/>
   </div>
</body>
</html>

当我重新调整页面大小时图像大小调整到的结果很好但是现在当我在移动设备中打开此页面时我需要始终以横向 View 显示所以我尝试这样做:

<link rel="stylesheet" type="text/css" media="screen and (max-device-width: 768px)" href="portrait.css" />

<link rel="stylesheet" type="text/css" media="screen and (min-device-width: 1024px)" href="landscape.css" />

喜欢这个link我把 landscape.css 放在:

body, html {    
  height: 100%;
}

body {
 background-color: #1E4922;
}

div#cont {
  height: 100%;
}

img#menu {
    display: block;
    margin-left: auto;
    margin-right: auto;
    height: 100%;
}
div#cont {

    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

并且在 portrait.css

    body, html {    
  height: 100%;
}

body {
 background-color: #1E4922;
}

div#cont {
  height: 100%;
}

img#menu {
    display: block;
    margin-left: auto;
    margin-right: auto;
    height: 100%;
}

表格link但它不起作用,所以任何帮助,非常感谢。

最佳答案

您可以使用 Javascript Detecting device orientation

function callback(){
  alert(window.orientation);
  if(window.innerHeight > window.innerWidth){
    /* some code */
  }
}

window.addEventListener('orientationchange', callback, true);

CSS media queries

/* portrait */
@media screen and (orientation:portrait) {
    /* some code */
}
/* landscape */
@media screen and (orientation:landscape) {
    /*  some code */
}

或使用 HTML

<link rel="stylesheet" type="text/css" href="landscape.css" media="screen and (orientation: landscape)">
<link rel="stylesheet" type="text/css" href="portrait.css" media="screen and (orientation: portrait)">

关于javascript - 如何在移动旋转时旋转 HTML5 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25769031/

相关文章:

javascript - 第一次尝试时我的悬停过渡不流畅

html - 如何在同一页面中为 "visited" anchor 设置不同的颜色?

html - "offset from the surrounding content"是什么意思?

php - 无法从数据库中获取数据并在 css 和 html 中打印

javascript - 在 JQuery Mobile 的 div 容器中打开链接

javascript - 改进的 isNumeric() 函数?

jquery - 从多个 foreach 循环创建单个对象

javascript - 添加拖放功能 AngularJS + highcharts

javascript - 如何取消js文件的压缩?

javascript - 按日期生成报价