微信支付 API
  1. 最佳实践
微信支付 API
  • 文档说明
    • 阅读对象
    • 版本说明
  • 术语
    • 支付模式
    • 名词解释
  • 支付账户
    • 支付账户
  • 接口规则
    • 协议规则
    • 参数规定
    • 安全规范
    • 获取openid
  • JSAPI支付
    • 场景介绍
    • 案例介绍
    • 接入前准备
    • 开发指引
    • 获取微信版本号
    • JSAPI调起支付
    • 支付常见问题
  • API列表
    • 统一下单
    • 查询订单
    • 关闭订单
    • 申请退款
    • 查询退款
    • 下载交易账单
    • 下载资金账单
    • 支付结果通知
    • 交易保障
    • 退款结果通知
  • 最佳实践
    • 支付回调和查单实现指引
    • 支付验收指引
    • 网络排查指引
    • 最佳安全实践
    • 跨城冗灾方案
    • 回调通知注意事项
    • 专线商户Notify升级指引
    • 商户收银台H5大字号规范
    • 微信支付二维码规范
  • 运营规范
    • 运营规范
  • SDK与DEMO下载
    • SDK与DEMO下载
  1. 最佳实践

商户收银台H5大字号规范

1. 范围#

本指引描述了微信支付商户使用H5页面作为收银台时,H5页面在微信内展示适配用户设置大字体的要求和指引。
本指引适用于微信支付商户、服务商收款产品中H5页面设计和实现。

2. 大字体介绍#

为了响应国家对App适老化与无障碍改造的要求,为更多用户都能获得良好的微信体验,微信内支持设置页面字体放大功能,用户设置大号字体后,微信内的元素会按比例放大显示,H5网页中的文字或图片也会放大,所以需要做好大号字体页面适配。
用户微信端设置大号字体有两个方法:
**方法1:**在微信内通过进入“设置>通用>字体大小” 来调整字体大小,设置后,微信内的页面元素都会跟随放大,效果如图1所示。
**方法2:**在阅读公众号文章时通过“右上角>调整字体”来设置字体大小,设置后,微信公众号内的H5页面元素会跟随放大。
img
图1:如何设置大字体

3. 未做适配的收银页面案例#

现有商户H5收银页面未做适配大字体时会出现信息溢出、遮挡、重叠等情况,严重影响了用户的阅读和操作,应避免以下几类情况发生。

3.1. 页面元素溢出#

img
图2:页面展示文字溢出
**解决方案:**信息过大导致的溢出,可通过限制字数、设置该元素不跟随放大(见限制页面元素不放大)来解决。

3.2. 信息重叠#

img
图3:页面展示文字重叠
**解决方案:**元素样式避免使用绝对高度,请使用相对单位或不设置高度。

3.3. 信息遮挡#

img
图4:页面文字被键盘遮挡
**解决方案:**信息被键盘、按钮遮挡的情况,开发者可检查页面样式,避免使用100%高度,保证字体放大后页面可滚动浏览。

4. 页面适配内容和实现指引#

为了给用户提供更好的使用体验,避免页面字体放大后出现信息溢出、重叠、遮挡等情况,要求开发者、设计师按如下6类指引做好页面适配。

4.1. 哪些元素需要放大#

默认情况下,包括文字,图标,图片,容器(cell、卡片),组件等页面中的所有元素都要跟随规则进行缩放。
当页面中的文字信息足够大(大于或等于40dp/pt),为了避免信息过大导致的溢出,设计师可以根据页面具体情况允许该文字信息不进行放大,以来避免不必要的放大。
设计师可以根据页面具体情况对于该页面设置最大放大档位(用户侧设置字号的档位,安卓分为8档,苹果IOS分为6档)。
img
图5:页面字体进行放大说明

4.2. 换行#

内容过多时可通过让文本信息换行的方式,避免信息被截断、重叠等情况,以保证信息展示完整。
img
图6:页面字体放大换行展示

4.3. 页面滚动#

空间不充足时,需支持页面上下滚动,以保证信息不被按钮、键盘或其他元素遮挡。
img
图7:页面字体放大后支持滚动条

4.4. 间距#

为了保证用户的阅读效率,我们建议页面中的间距不跟随大字体模式缩放。当元素之间的间距不足以区隔信息,或者页面中有较多的适配空间时,可以放大间距。为了更好的实现以上效果,我们建议开发者在开发时,间距样式使用绝对单位,避免元素之间的间距跟随字体大小变化而变化。
img
图8:页面字体放大后间距设置

4.5. 拥挤情况#

当文字信息过多时,放大后容易出现重叠或被截断的情况,此时应预留好内容之间的安全距离,内容过多需要折行,容器高度也相对延伸,调整内容与容器水平居中对齐。原则如下:
img
图9:页面字体放大后拥挤情况对比

4.6. 限制页面元素不放大#

当页面中的文字信息足够大,为了避免信息过大导致溢出,设计师可以根据页面具体情况设置该文字信息不进行放大。实现页面部分元素不跟随放大,开发者需按以下3个步骤操作:
**步骤1:**禁止微信内网页字体大小默认缩放(Android、iOS设置方式不一样,详见代码示例中的备注1-1、1-2)。
**步骤2:**监听微信网页字体大小的事件menu:setfont,获取当前设置的字体大小信息。
**步骤3:**为不同的信息元素设置指定样式。
代码示例如下:
<script>
// 微信网页字体大小自定义适配 Demo
document.addEventListener("WeixinJSBridgeReady", function (params) {
    // 1-1.设置禁止 Android 微信内网页字体大小默认缩放
    WeixinJSBridge.invoke("setFontSizeCallback", {
        fontSize: '2' // 默认档位 2
    });
    // 2.监听网页字体大小的事件,页面加载完成或用户手动修改字号会触发该事件
    WeixinJSBridge.on('menu:setfont', function (e) { // e.fontSize 档位  e.fontScale 放大比例
        // 3-1.业务逻辑
        // rem方式,根据档位或放大比例设置根字号大小
        // 非rem方式,根据档位或放大比例设置根节点命名空间className(如:wechat_fontsize_6)
    });
}, false);
</script>

<style>
/* 1-2.设置禁止 iOS 微信内网页字体大小默认缩放 */
body {
    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;
}
/* 3-2.业务逻辑 */
.wechat_fontsize_6 .title { }
</style>
                                

5. 验收要求#

商户发布收银H5页面前, 需要做实际环境的测试和验收。
具体验收要求:在iOS手机和Android手机上分别进行验收,建议验收时考虑到最小机型的效果,如iPhone SE,安卓小屏机。在手机设置大字体后(方法见设置大号字体方法),H5网页展示效果符合上文要求后才能上线。
适配后,开发者需要自查以下3点:
1、页面中的文字、图片、按钮等元素均放大。
2、页面中文字、图片、按钮等元素没有现信息溢出、被遮挡、重叠等情况。
3、将字体大小调整到第6档位时,保证页面主要文字信息最小不小于18dp/pt。
img
上一页
专线商户Notify升级指引
下一页
微信支付二维码规范
Built with