uni-app使用rem单位布局

问题描述:一般使用uni-app是开发移动端,但是根据需求需要开发pc端又想用uni-app的技术,pc端使用rpx会出现不兼容,所有使用rem布局;

解决思路:uni-app提供了可以设置html标签字体的组件 page-meta 可以动态渲染html字体大小从而实现响应式布局,组件详情请看官方文档:https://uniapp.dcloud.io/component/page-meta

<template>
	<view class="indexBody">
		<page-meta :root-font-size="fontsize+'px'"></page-meta>		<!--动态设置html字体大小-->
		<!--在此处布局-->
	</view>
</template>

布局就可以直接使用rem了

export default {
		data() {
			return {
				title: 'Hello',
				fontsize:12,
			}
		},
		onLoad() {
			let srceenNunber=19.2;	//因设计图是1920所有把设计图分为19.2份,所以html字体大小为100px
			let that=this;
			
			//窗体改变大小触发事件
			uni.onWindowResize((res) => {
			    console.log('变化后的窗口宽度=' ,res.size.windowWidth);
				that.fontsize=parseFloat(res.size.windowWidth)/srceenNunber;
			})
			
			//打开获取屏幕大小
			uni.getSystemInfo({
				success(res) {
					console.log('设备信息:',res);
					that.fontsize=res.screenWidth/srceenNunber;
					console.log('字体大小:',that.fontsize);
				}
			})
		},
	}

希望此文章能够帮助您,欢迎评论区留言提问,转载请附属原文链接

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值