在目标页面 json 文件里设置 "pageOrientation": "landscape" 即可实现全屏,这个参数默认是 "portrait" (竖屏),设置 "auto" 表示跟随手机系统自动转换。
需要注意的是,设为横屏后, rpx 单位不再生效,有人建议使用 px ,但是这样不能实现自适应布局,所以我们需要引入一个新的单位: vmin 。
vmin :视口宽度 vw 和高度 vh 两者之间的最小值。
其实,有 vmin 自然就会有 vmax , vmax 意为视口宽度 vw 和高度 vh 两者之间的最大值。
vw 我们都理解,是当前设备宽度的1%,即1vw就是设备宽度的1%,50vw就是设备宽度的50%( vh 同理)
vmin 怎么理解呢?拆一下,看成 v + min ,前面的 v 还是 vw 中的 v , min 则是 w 和 h 中的最小值,这样一来, vmin就能理解为当前设备最短边的1% ( vmax 则是最长边的1%),是不是立马就懂啦?50vmin就是最短边的一半,100vmin就是最短边的全部。
什么时候会用到这两个单位呢?
案例1:一个总能展示在屏幕的正方形(如上图左边黄色区域)可以这样定义:
案例2:一个以屏幕最长边为边长的正方形(如上图右边黄色区域)可以这样定义:
所以,我们在小程序中使用 vmin 作为长度单位就能保证所有元素都能正常展示,也可以适应各种尺寸的屏幕了。
但是这样一来,写CSS的时候不就很麻烦?我们想实现一个竖屏状态下是200rpx * 50rpx的按钮,在横屏状态下使用 vmin 做单位的话,宽高各是多少呢?这涉及 rpx 和 vmin 的单位换算,所以我们需要定义一个转换函数帮助我们处理这些转换逻辑。
这篇文章 介绍了如何在微信小程序中使用SCSS,这里我们使用SCSS定义该函数,:
于是,横屏页面下,我们可以这样定义一个按钮使之做到自适应:
最终渲染出来的结果是:
你学废了吗?
微信搜索「 熊猫活动助理 」进入体验。
小程序中的抽奖界面使用了横屏模式,可以进入小程序体验一下,具体操作可参考 《如何制作一个抽奖点名工具》 。
⑵ 微信小程序 页面怎么引入css文件
微信小程序的页面结构主要由四个部分组成:js(页面逻辑)、wxml(页面结构)、wxss(页面样式表)和json(页面配置)。每个页面的样式主要存放在同名的.wxss文件中,这样可以方便地管理和维护样式。
在开发微信小程序时,开发者可以通过将样式代码写入对应的.wxss文件中,来为页面添加样式。例如,如果有一个页面的文件名为“index”,那么对应的样式文件名也应该为“index.wxss”。这样,小程序在运行时会自动加载对应的样式文件,从而实现页面的样式展示。
需要注意的是,wxss文件中的样式规则与CSS类似,但也有一定的差异。例如,类选择器和标签选择器的写法有所不同。在使用wxss文件时,可以通过类名或标签名来引用样式规则。此外,还可以使用特殊的选择器,如:::before和::after,来插入伪元素。
在编写样式时,可以利用一些CSS选择器来实现复杂样式效果。例如,可以使用伪类选择器来实现不同状态下的样式变化,或者使用嵌套选择器来实现复合样式。另外,还可以使用变量来实现样式复用,提高代码的可维护性。
微信小程序提供了丰富的样式特性,开发者可以根据实际需求来选择合适的方式来编写样式代码。通过合理地运用这些特性,可以为小程序页面创建出美观、实用的样式效果。
在编写样式时,还可以利用一些CSS3特性,如:渐变、阴影、过渡等,来实现更丰富的视觉效果。此外,还可以使用一些预处理器,如:Sass、Less等,来提高代码的可读性和可维护性。
总之,通过正确地使用wxss文件,可以为微信小程序页面添加丰富的样式效果,提升用户体验。开发者在编写样式时,应该注重代码的规范性和可维护性,以便后续的维护和优化。