微信小程序----解析px、rpx、rem、vw实现页面布局

微信小程序----解析px、rpx、rem、vw实现页面布局

PX

px:绝对单位,页面按精确像素展示。


在PC端经常使用的单位,不用计算,直接使用,一般情况不用考虑设计图纸的来改变页面的大小。就直接采用px,方便快捷但是不能自适应。

RPX

rpx单位是微信小程序中css的尺寸单位,rpx可以根据屏幕宽度进行自适应。


微信的自适应单位,同时微信规定:屏幕宽为750rpx。如在 iPhone6 上,屏幕宽度为375px,共有750个物理像素,则750rpx = 375px = 750物理像素,1rpx = 0.5px。

设备rpx换算px (屏幕宽度/750)px换算rpx (750/屏幕宽度)
iPhone51rpx = 0.42px1px = 2.34rpx
iPhone61rpx = 0.5px1px = 2.00rpx
iPhone6s1rpx = 0.552px1px = 1.81rpx

REM

rem:相对单位,可理解为”root em”, 相对根节点html的字体大小来计算。


微信小程序的rem尺寸单位,rem和rpx的换算关系:rem: 规定屏幕宽度为20rem;1rem = (750/20)rpx =37.5rpx;

VW

vw、vh、vmin、vmax 主要用于页面视口大小布局,相对于rem;vw在页面布局上更加方便简单。


相对于视口的宽度。视口被均分为100单位的vw。如在 iPhone6 上,屏幕宽度为375px,共有750个物理像素,则1vw = 7.5px。不用关注是在什么屏幕下,只用关注设计图纸的宽度。假如:在750px的设计图纸,一个字体是30px,那么font-size: calc(30/7.5)vw,也就是font-size: 4vw。简单快捷,微信小程序支持,同时自适应很强。

VW上线实例小程序

  1. 观合中医

观合中医微信小程序

总结

经过个人的开发实践经验,个人推荐使用VW单位解决微信小程序的适配方案,开发快捷、简单、易懂。所以推荐使用VW作为微信小程序的适配单位。

其他

QQ交流群:264303060

我的博客,欢迎交流!

我的CSDN博客,欢迎交流!

微信小程序专栏

前端笔记专栏

微信小程序实现部分高德地图功能的DEMO下载

微信小程序实现MUI的部分效果的DEMO下载

微信小程序实现MUI的GIT项目地址

微信小程序实例列表

前端笔记列表

游戏列表

posted @ 2018-07-31 15:36 Newman·Li 阅读( ...) 评论( ...) 编辑 收藏
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
微信小程序提供的组件中,Grid(网格)是一种非常强大和灵活的布局组件,可以实现多种不同的网格视图。其中一种常见的应用场景是行和列同时滑动,从而使用户可以快速浏览并选择不同的内容。 要实现这种功能,首先需要在 Grid 组件中设置 scroll-x 和 scroll-y 两个属性为 true,以允许同时滑动水平和垂直方向。同时,还需要设置每个网格项(即每个单元格)的宽度和高度,以确保它们能够按照预期的方式排列在网格中。 具体的实现方法可以分为以下几个步骤: 1. 在 wxml 文件中添加 Grid 组件,并设置 scroll-x 和 scroll-y 属性为 true。 ```html <view class="grid-container"> <grid scroll-x scroll-y> <!-- 网格项内容 --> </grid> </view> ``` 2. 在样式表中设置网格容器的高度和宽度,以及网格项的宽度和高度。 ```css .grid-container { width: 100%; height: 500rpx; } .grid-item { width: 33.3%; height: 200rpx; } ``` 3. 在 js 文件中动态设置网格项的内容和数量。 ```js Page({ data: { gridData: [] }, onLoad: function () { // 从服务器获取网格项数据 // ... // 将数据存储到 data 中 this.setData({ gridData: [ { text: '网格项1' }, { text: '网格项2' }, { text: '网格项3' }, { text: '网格项4' }, { text: '网格项5' }, // ... ] }); } }) ``` 4. 在 wxml 文件中使用 wx:for 循环遍历网格数据,并将网格项的文本内容显示出来。 ```html <view class="grid-container"> <grid scroll-x scroll-y> <block wx:for="{{ gridData }}" wx:key="{{ index }}"> <grid-item class="grid-item">{{ item.text }}</grid-item> </block> </grid> </view> ``` 综上所述,通过上述步骤,即可实现微信小程序组件 Grid 的行和列同时滑动的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值