uniapp,通过webview内嵌h5页面,如何修改h5的大小

需求,uniapp的app的项目,需要内嵌一个h5的页面,但是这个h5等比缩放后,高度不够撑开pad,所以想放中间,上下留白(跟背景色相同)

只需要在内嵌webview的页面增加如下代码:

javascript 复制代码
onReady() {
	// #ifdef APP-PLUS
	var currentWebview = this.$scope
	.$getAppWebview() //此对象相当于html5plus里的plus.webview.currentWebview()。在uni-app里vue页面直接使用plus.webview.currentWebview()无效
	setTimeout(function() {
		wv = currentWebview.children()[0]
		wv.setStyle({
			top: 40,
			background: 'transparent'//可不加,默认透明色,但不能设置其他颜色,不然top失效
		})
	}, 1000); //如果是页面初始化调用时,需要延时一下
	// #endif
},

需要注意:

background可以不加,或者设置为transparent,但是不能设置white等别的颜色,不然top就失效了

Web-view的渲染层级逻辑:

  1. 不设置background时

    • Web-view使用默认背景(通常是透明或平台默认)

    • 系统将其视为"可能有透明区域"

    • top: 150 生效,上方区域可以交互

  2. 设置为透明时

    • 明确告诉系统:"我是透明的"

    • top: 150 生效,上方区域可以交互

  3. 设置为具体颜色时

    • 告诉系统:"我是不透明的实体"

    • 系统会将其作为一个完整的不透明层处理

    • 即使设置了 top,也会从屏幕顶部开始绘制

    • 0-150区域被Web-view的不透明背景覆盖

相关推荐
河北清兮网络科技12 小时前
短剧 APP 产品说明
小程序·uni-app·短剧
宠友信息17 小时前
一套基于uniapp+springboot完整社区系统是如何实现的?友猫社区源码级功能解析
java·spring boot·后端·微服务·微信·uni-app
碎像1 天前
掌握uniapp发布微信小程序、App(Android)
微信小程序·小程序·uni-app
stpzhf1 天前
uniapp nvue组件多个text在一行并且高亮其中一些文字
前端·javascript·uni-app
qq_316837751 天前
制作uniapp原生插件 在本地离线打包中测试 集成在云打包中
uni-app
Fate_I_C2 天前
uniappx 鸿蒙运行包制作失败
华为·uni-app·uniapp·harmonyos
chQHk57BN2 天前
跨平台前端开发:用Flutter和UniApp一次编写多端运行
flutter·uni-app
自然 醒3 天前
uni-app开发微信小程序,如何使用towxml去渲染md格式和html标签格式的内容?
微信小程序·uni-app·html
CHB3 天前
uni-agent,你的数字员工来了
人工智能·uni-app·vibecoding
h_jQuery3 天前
uniapp使用canvas实现逐字书写任意文字内容,后合成一张图片提交
前端·javascript·uni-app