更改平板电脑视口以准确显示固定尺寸元素

2024-04-09

我有一个宽度恰好为 1000 像素、高度为 850 像素的 HTML 元素(它实际上是一个在画布标记上包含 HTML5 游戏的 iFrame,但我希望这并不重要)。

我希望元素呈现在平板电脑上,以便视口缩放以始终显示整个元素,仅此而已。因此,当平板电脑处于横向模式时,您会期望两侧都有空白;在纵向模式下,下面(和上面?)会有空白。

在 iPad2 上进行测试时,纵向模式似乎可以立即使用,视口会自动将元素置于顶部并缩放以准确显示整个图像;但在横向模式下,它会做同样的事情并切断底部。

我尝试过各种组合viewport元标记,例如<meta name="viewport" content="height=850"/>,但似乎无法让它持续工作。

使用 jQuery 根据窗口大小的变化调整大小的解决方案将受到欢迎。


更好的解决方案是根据设备的屏幕宽度动态修改视口元标记。

例如,如果您的网站针对 1000 像素宽进行了优化(那么您希望将初始比例动态设置为将整个网站置于视图中所需的精确缩放值。

  1. 将没有“内容”属性的视口元放在您的头脑中。

      <head>
           <meta id='viewport' name="viewport"/>
      </head>
    
  2. 在文档正文中添加 javascript 片段

      //our desired page width
      var desiredPageWidth = 1000;
    
      //detect the device screen width
      var screenWidth = 0;
      if(window.innerWidth > 0)
      {
           screenWidth = window.innerWidth;
      }
      else if(screen.width > 0)
      {
           screenWidth = screen.width;
      }
    
      //if your screen width is less than the desired page width
      //then calculat the initial zoom
      if(screenWidth < desiredPageWidth)
      {
           //initial zoom is the screenWidth / desiredPageWidth
           var viewportContent = "width="+desiredPageWidth+", maximum-scale=1, initial-scale="+screenWidth/desiredPageWidth;
    
           //dynamically set the viewport content
           document.getElementById('viewport').setAttribute('content', viewportContent);
      }
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

更改平板电脑视口以准确显示固定尺寸元素 的相关文章

  • 移动端适配方案之postcss-px-to-viewport

    之前做移动端适配时 基本上是采用rem方案 现在发现了一个新的方案 就是用viewport单位 现在viewport单位越来越受到众多浏览器的支持 postcss px to viewport 将px单位自动转换成viewport单位 用起
  • 如何知道窗口小部件在视口中是否可见?

    我有一个视图 其中包含Scaffold和一个单一的ListView在其主体中 列表的每个子项都是一个不同的小部件 代表视图的各个 部分 部分范围从简单的 TextView 到排列Columns and Rows 我想展示一个Floating
  • JavaFX ScrollPane 以编程方式移动视口 - 使内容居中

    我可以使用 setVvalue double 和 setHvalue double 方法在 JavaFX ScrollPane 中移动视口 我正在努力做的是根据其位置将特定节点置于滚动窗格内容的中心 我尝试过 localToScene 和b
  • 如何在不刷新整页的情况下重置视口缩放?

    我有一个网页 其视口元标记的 用户可扩展 属性设置为 true Safari 参考 安卓参考 因此 使用可识别该属性的浏览器 例如 Mobile Safari Android 浏览器 的用户可以通过捏合来缩放页面 但是 有一个链接使用 AJ
  • 视口标签在 Chrome 上不起作用

    我正在 Chrome 中使用设备指标覆盖来测试较小分辨率 本例中为 320x480 的响应式网站 在这种情况下 我的视口元标记不会对页面产生任何影响 徽标会显得很小 而且完全无法辨认 或多或少 我会说我看到的一切都是 0 5 比例的 这是我
  • 使用中心插件将 jQuery 中心元素置于视口

    我目前正在使用 jQuery center 插件来居中我的 div 元素 到目前为止 它的工作范围已经达到了将其居中到包含父容器的位置 我想要它做的是将其居中到当前浏览器视口中心 那怎么办呢 我的设置是一个简单的链接 单击时会弹出一个 di
  • 如何为 iPhone 设置视口元以正确处理旋转?

    所以我一直在使用 让我的 HTML 内容在 iPhone 上完美显示 它工作得很好 直到用户 将设备旋转到横向模式 其中显示仍限制为 320 像素 有没有一种简单的方法来指定一个视口 该视口会随着用户更改而变化 设备方向 或者我必须求助于
  • 如何使用jquery检查某个元素是否在用户视图中

    我有一个很大的可拖动对象div在我的窗户里 这div有一个较小的窗口 div style width 500px height 500px div style width 100 height 5000px ul li li li li l
  • Android 4.1 视口缩放( setInitialScale、元初始缩放不起作用)

    SO 和互联网上有数百篇关于尝试修复 Android 中视口缩放的帖子 我现在相当确定您无法在 Android 4 1 上的 webview 中设置初始比例 我正在构建一个 Cordova Phonegap 应用程序 并且我已经在 iPho
  • iPad Safari 视口的高度

    iPad 的视口宽度为 980 像素 高度是多少 在 Safari 中 我们必须添加地址和新的水龙头 Safari 横向模式下的高度是多少 有一个媒体查询可以使网页适合宽度 有没有办法使网页适合高度 以下是答案 你是对的 iPhone iP
  • 如果视口为 480 像素或更小,请更改为 FullCalendar 中的 basicDay 视图?

    有没有一种简单的方法可以根据 FullCalendar 中的当前视口大小更改用户的视图 我想做的是在桌面上显示月视图 如果使用 iPhone 或移动设备则显示日视图 目前 使用月视图时 所有事件都被压缩在移动设备上 当前代码 documen
  • iOS 8.3 - 元视口初始比例低于 1.0 会导致方向变化时出现奇怪的内容缩放

    将我的 iOS 设备升级到 iOS 8 3 后 我注意到元视口初始缩放属性出现了一些奇怪的行为 如果我将初始比例设置为 1 0 以下 并在浏览网页时旋转设备 则整个内容将逐渐变小 最终浏览器将崩溃 我注意到 每次方向变化时内容变小的程度与您
  • vim:打开水平和垂直分割的4个文件

    在命令行上 vim可以打开4个水平分割的文件 vim o file1 file2 file3 file4 或 4 个文件垂直分割 vim O file1 file2 file3 file4 如何打开 4 个文件 使其水平和垂直分割 如下所示
  • 视口像素 vs 设备像素 vs CSS 像素

    CSS 像素 div sidebar width 300px css 像素宽度 设备像素宽度 x 1 设备像素比率 例如 假设设备像素为 1920 w X 960 h dpr 2 css 宽度 1920 1 css px 2 设备 px 9
  • width=device-width 在移动 IE 中不起作用

    我正在尝试制作一个在手机上运行良好的网站 到目前为止 我测试过的每部手机都运行良好 但装有 Windows Mobile IE 的手机除外 看来 Mobile IE 只是读取了并且没有将宽度设置为设备宽度 有人有这方面的经验或任何让网站在移
  • 更改平板电脑视口以准确显示固定尺寸元素

    我有一个宽度恰好为 1000 像素 高度为 850 像素的 HTML 元素 它实际上是一个在画布标记上包含 HTML5 游戏的 iFrame 但我希望这并不重要 我希望元素呈现在平板电脑上 以便视口缩放以始终显示整个元素 仅此而已 因此 当
  • 用于分配视口元参数的脚本,iPhone / iPad 难题

    我正在使用 JavaScript 片段根据浏览器窗口的宽度设置视口元标记的内容参数 该脚本几乎完成了它应该做的事情 它将任何大屏幕设备的初始比例值设置为 1 将纵向模式下的 iPad 设置为 0 5 并将任何屏幕宽度小于 700px 的设备
  • 滚动“返回顶部”链接时显示/隐藏 div

    我无法让我的 转到顶部 id arrow updiv 在打开时消失 例如页面顶部 在页面顶部我得到了 所以我想要arrow up div to visible show slow 当不在页面顶部时 var tmp window height
  • 移动 Safari - 视口设备高度未按预期工作

    我有一个网络应用程序 我试图在 iPad 3 上运行 当我拉起它时 该应用程序允许垂直滚动 但实际上不应该 我已经对其他网络应用程序执行了相同的过程 没有任何问题 并且不确定这次我错过了什么 在我的 html 的 head 元素内 我有以下
  • 如何设置仅适用于 iPhone 或 iPad 的视口?

    我有一个网站 需要在 iphone 上使用 0 3 的视口值 但在 ipad 上使用 0 7 有没有办法只为 iPhone 或 iPad 设置视口 这是一种解决方案

随机推荐