vue iframe嵌套页面高度自适应 (ios 宽度扩大的bug , ios展示比例问题)

<template>
  <div class="card-index pt-relative">
    <div id="wrapper" :style="'height:'+Height+'px;'">
      <iframe
        v-if="iframeType"
        :src="srcUrl"
        sandbox="allow-forms allow-same-origin allow-scripts allow-top-navigation allow-modals"
        id="iframe"
        marginwidth="0"
        marginheight="0"
        align="center"
      ></iframe>

 

      <iframe
        v-else
        :src="srcUrl"
        sandbox="allow-forms allow-same-origin allow-scripts allow-top-navigation allow-modals"
        id="iframe"
        scrolling="no"
        marginwidth="0"
        marginheight="0"
        align="center"
      ></iframe>

 

   
    </div>
  </div>
</template>
 
 
 data() {
    return {
      srcUrl: "",
      iframeType: false
    };
  },
 created() {
 var u = navigator.userAgent;
    var isAndroid = u.indexOf("Android") > -1 || u.indexOf("Adr") > -1; //android终端
    // var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
    // console.log('是否是Android:'+isAndroid);
    // console.log('是否是iOS:'+isiOS);
    if (isAndroid) {
      this.iframeType = true;
    } else {
      this.iframeType = false;
    }
}

<style lang='scss' scoped>
.card-index /deep/ {
  width: 100%;
  position: relative;
  #iframe {
    width: 100%;
    height: 100%;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    min-width: 100%;
    *width: 100%;
    width: 1px;
  }

  #wrapper {
    -webkit-overflow-scrolling: touch;
    overflow: auto;
    position: fixed;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
  }
 
</style>
posted @   假装学习  阅读(3020)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示