<template>
	<view class="view-page">
		<view class="image">
			<img src="/static/image/task/rule.png" alt="" />
		</view>
		<view class="dec-view" style="background-color: transparent !important;">
			<web-view :style="{ backgroundColor: 'transparent' }" :webview-styles="webviewStyles"
				:src="`${httpUrl}/api/Page/page_show?id=17`"></web-view>
		</view>
	</view>
</template>

<script>
	import config from '@/until/config.js';
	export default {
		data() {
			return {
				httpUrl: null,
				// 关键配置：设置 WebView 样式
				webviewStyles: {
					progress: {
						color: 'transparent' // 隐藏进度条
					},
					// 安卓专用配置
					android: {
						hardwareAccelerated: true, // 开启硬件加速
						backgroundColor: 'transparent'
					},
					// iOS 专用配置
					ios: {
						allowsInlineMediaPlayback: true,
						backgroundColor: 'transparent'
					}
				}
			}
		},
		onLoad() {
			this.httpUrl = config.BASE_URL
		},
		onReady() {
			
			// #ifdef APP-PLUS
			// 获取 WebView 实例进行原生设置
			const pages = getCurrentPages();
			const page = pages[pages.length - 1];
			const currentWebview = page.$getAppWebview();

			setTimeout(() => {
				const webview = currentWebview.children()[0];

				// 安卓原生设置
				// #ifdef APP-ANDROID
				webview.setStyle({
					background: 'transparent'
				});
				// #endif

				// iOS 原生设置
				// #ifdef APP-IOS
				webview.setStyle({
					opaque: false
				});
				// #endif
			}, 300); // 延迟确保 WebView 加载完成
			// #endif
		}
	}
</script>

<style scoped lang="scss">
	::-webkit-scrollbar {
		display: none !important;
	}

	/* 重要：设置页面背景透明 */
	page {
		background-color: transparent !important;
	}

	/* 隐藏 WebView 默认容器背景 */
	uni-web-view>div {
		background-color: transparent !important;
	}

	.view-page {
		font-family: Source Han Sans CN, Source Han Sans CN;
		min-width: calc(100% - 40rpx);
		padding: 0 20rpx;
		height: 100vh;
		overflow: hidden;
		background-color: transparent !important;
		margin: 0 auto;
		position: relative;

		.image {
			width: calc(100% - 40rpx);
			// min-height: 100vh;
			position: absolute;
			top: 0;
			left: 20rpx;
			right: 20rpx;
			// bottom: 0;
		}

		.dec-view {
			width: calc(100% - 40rpx - 48rpx);
			min-height: calc(60% - 48rpx);
			position: absolute;
			top: 33%;
			border-radius: 16rpx;
			padding: 24rpx;
		}
	}
</style>