如何在设备屏幕中使用横向方向调整iframe内容

时间:2017-12-21 08:29:41

标签: html css iframe responsive-design

我有一个网页,我已将其设置为在移动设备上设置横向,我已在其中放置了iframe。我的问题是我无法在横向方向(整个宽度和高度与设备屏幕匹配)中使iframe适合移动设备屏幕。我怎么能够做到这一点?

我正在使用CSS:

<style>
   body, html {
     margin: 0;
     padding: 0;
     height: 100%;
     overflow: hidden;
   }

   #content {
     position:absolute;
     left: 0;
     right: 0;
     bottom: 0;
     top: 0
   }

  #content iframe{
    width:100%;
    height:100%;
    border:none;
  }

  @media screen and (orientation:portrait) {
      body {
         -webkit-transform: rotate(-90deg);
         -webkit-transform-origin: 50% 50%;
         transform: rotate(-90deg);
         transform-origin: 50% 50%;

           }
     }
   </style>

和HTML:

<div id="content">
    <iframe src="localhost/iframeTest/index.php" 
      allowtransparency="true" frameborder="0" scrolling="no" 
      class="wistia_embed" name="wistia_embed" allowfullscreen 
      mozallowfullscreen webkitallowfullscreen oallowfullscreen 
       msallowfullscreen width="100%" height="100%"></iframe>
</div>

1 个答案:

答案 0 :(得分:0)

正如我在评论中所述,问题是,在旋转之前计算尺寸。要解决此问题,您可以使用vh, vw尺寸,仅vw表示高度,vh表示宽度。然后,您可以旋转并将其转换回视口。

body {
  display: block;
  width: 100vh;
  height: 100vw;
  transform: translateY(100vh) rotate(-90deg);
  transform-origin: top left;
}

检查此codepen以查看其是否有效:https://codepen.io/pixelarbeit/pen/rpLbNe