好的表单设计应该遵循什么规则?

在数字化时代,表单已经成为了人们生活中不可或缺的一部分。它们可能是网站注册表格、调查问卷、订单表格或者其他类型的表格。无论表单的类型是什么,都必须经过精心设计才能提供良好的用户体验。在本文中,我们将探讨如何设计一份用户体验好的表单,以提高用户满意度和响应率。

 

什么是表单设计

一个表单有三个基本组成部分:表单标签、表单域、表单按钮。

表单标签告诉用户该表单需要填写什么类型的信息,也涉及到对用户输入内容进行校验与反馈,保证用户信息填写的完整度。

表单域由文本框、密码框、隐藏域、多行文本框、 复选框、单选框、下拉选择框和文件上传框等组成。 

表单按钮包括提交按钮、复位按钮和一般按钮。

由于表单在日常应用中主要负责信息添加和录入,设计师除了从以上三个方面进行设计,还需要对用户输入内容进行引导,尽量简化用户操作,让人们能轻松迅速填写完成表单,从而完成信息录入。

表单设计原则

(一)表单元素

图片来源于AdBright轻叶-H5制作工具

如上图所示,表单元素是多种多样的:

1. 表单标签:红色的星号表示内容为必填项;占位文本主要是解释输入项的含义,一般不会太长,采用弱提示文本对所需信息描述,当用户输入信息时即消失。

2.基础组件:可交互输入的区域,是构成表单的核心内容,主要有:输入框、单(复)选框、上传、时间选择器、开关等,具体想了解可点击 https://h5.adplusx.com/ 创建H5后查看左侧表单组件。

3. 按钮:用户完成输入后,点击按钮进行提交、进入下一步等,按钮一般跟随在最后一个输入项后面。

(二)设计原则

1.有明确的反馈

1)明确提示信息

以前,我们填写表单是需要靠猜的,比如我的手机号码应该用哪种格式?信用卡号码填写有没有遗漏?“@”符号在键盘的哪个位置?现在,新的表单设计能够帮助用户做出判断,提高表单使用体验。

占位文案内容应该明确提示信息。首先在标签标注是否必填项,其次明确要填写的内容是数字还是字母,在占位文案或者输入框末尾加上单位,使用户明确输入框应该填写哪些内容。

按钮文案要站在互用的角度设计,如:“提交”、“好的”、“允许”。也要减少如“下一步”、“操作”这样笼统的表述,对用户将采取的操作多使用“注册”、“立即支付”、“创造账户”。

2)限制输入

当我们填写电话号码、信用卡号、货币等数字的时候,有个简单的方法是调用手机上的小键盘,对于仅包含数字的字段,如日期、邮编、信用卡号等,使用“电话号码”样式的小键盘因为触发面大的原因能让用户轻松地输入数字且只能输入数字。

图片来源于网络,侵删

3)明确操作指令和及时反馈

用户需要得到操作成功的反馈,还要让他们知道接下来的步骤。如下图所示,发布后有toast提示。

图片来源于AdBright轻叶-H5制作工具

2.优先考虑用户浏览方式

不同的产品和浏览器考虑不同布局,用户浏览网页是通过眼睛快速扫描的方式浏览,而不是从上往下逐字地阅读。通关眼动测试研究发现,用户重点会关注左侧,又习惯于用右手操作。这就使设计师设计时应该将移动端布局设置为从上到下的,而重要信息放在左侧,操作按钮放在中间或者右侧。

图片来源于网络,侵删

3.减少用户思考

1)加入引导内容

图片来源于网络,侵删

有时表单特别冗长但是又是必填信息无法跳过时,设计师要尝试加入步骤条分割信息,传达给用户目前所处阶段。只需要花一点心思,就能节省用户宝贵的时间并安抚他们的情绪。

2)提供足够的点击区域

我们经常单手操作设备,但是现在手机或是平板的屏幕越来越大,经常有单个手指够不到的情况。这种情形我们在设计时要预留足够的点击区域,为用户操作便利考虑。

3)使用合适的组件

除了输入框应该选择其他合适的组件,试着将输入框替换成其他基础组件:有预设答案时给用户提供更多选项,将部分输入框换成筛选框;而收集数量则可以直接使用“数字步进器”;如果支持接入其他外部信息则推荐使用智能的即时搜索方案,用户输入过程中帮助用户补充其他信息。

4)使用智能默认值

自动填写:利用浏览器显示用户之前填写的数值,但需要将敏感数据设置为“关闭”。

自动更正:当用户出现文字拼写错误的时候自动更正,但要注意如果是姓名、地址等特殊字段的时候需要关闭此功能。

自动大写:第一个字母大写。

拼写检测:用红色强调拼写错误的单词,但也需要注意如果是姓名、地址等特殊字段的时候需要关闭此功能。

利用定位:你可以根据IP地址、设备语言甚至某些情况下的设备位置进行猜测,节省用户填写地址的时间。

注意预期日期格式:在数字键盘上(甚至移动设备上)输入8个数字都能比滚动3个下拉框快得多。如果坚持使用原生iOS或Android日期选择器,请确保有一个实际的默认日期,而不是1900年或当前年份。除非你在为百岁老人协会的年度晚会设计申请表。

总结

表单是我们生活中常见的信息添加、录入的方式之一,如何进行表单设计也是UI设计师的必修课。

表单虽然看起来简单,但需要思考的细节众多,想要把一个表单做好不是一件容易的事情。

我们在设计表单时,应该思考为什么这么做,如何在用户录入信息时降本提效,围绕用户目的与实际使用场景,提供易读性高且规范表格更是需要设计师反复思考的事情。

参考资料:

《必知!四个必须遵循的表单设计原则》,Mike Madaio(译者:设计厂)

《10个高效实用的表单设计技巧》,Bence Vitarius(编译作者:大蛤蜊 | 上海 | UI设计师)

《表单设计:掌握表单设计方法》,@小发哥

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/5070.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Redis缓存双写一致性

目录双写一致性Redis与Mysql双写一致性canal配置流程代码案例双写一致性理解缓存操作细分缓存一致性多种更新策略挂牌报错,凌晨升级先更新数据库,在更新缓存先删除缓存,在更新数据库先更新数据库,在删除缓存延迟双删策略总结双写一致性 Redis与Mysql双写一致性 canal 主要是…

低代码开发公司:用科技强力开启产业分工新时代!

实现办公自动化,是不少企业的共同追求。低代码开发公司会遵循时代发展规律,注入强劲的科技新生力量,在低代码开发市场厚积爆发、努力奋斗,推动企业数字化转型升级,为每一个企业的办公自动化升级创新贡献应有的力量。 一…

【数据结构与算法】堆的实现(附源码)

目录 一.堆的概念及结构 二.接口实现 A.初始化 Heapinit 销毁 Heapdestroy B.插入 Heappush 向上调整 AdjustUp 1.Heappush 2.AdjustUp C.删除 Heappop 向下调整 AdjustDown D.堆的判空 Heapempty 堆顶数据 Heaptop 堆的大小 Heapsize 三.源码 Heap.h He…

【模板】带权并查集

文章目录1. 奇偶游戏2. 银河英雄传说1. 奇偶游戏 239. 奇偶游戏 题意: 依次给出多个区间的含 111 的个数的奇偶性,找出第一个不符合的答案的回答。 思路: 已知区间[a,b][a,b][a,b][b,c][b,c][b,c]的奇偶性,那么具有传递性&…

分享一个国内可用的免费ChatGPT网站(自己写的)

背景 ChatGPT作为一种基于人工智能技术的自然语言处理工具,近期的热度直接沸腾🌋。 作为一个程序员,我也忍不住做了一个基于ChatGPT的网站,免费!免登陆!!国内可直接对话ChatGPT,也…

10.线性表代码实战

10.1 与408关联解析及本节内容介绍 链表比顺序表出现的顺序更加的频繁。 10.2线性表地顺序表示原理解析 线性表的特点: (1)表中的元素的个数是有限的 (2)表中元素的数据类型相同。意味着每一个元素占用相同大小的空…

使用Dism++和360安全卫士搞定Windows10离线升级

Windows10有很多版本,常见的由1903、1909、20H1、21H2等,在离线状态下,很难下载到匹配的升级补丁。期间尝试多种方法均失败,最后用Dism和360安全卫士组合拳搞定。 1、使用下载补丁,升级失败 比如这里介绍了常见补丁&a…

【SL101】 传感器接入chirpstack平台

【SL101】 传感器接入chirpstack平台使用硬件SL100工程师答疑chirpstack 中 net-server 使能 80-87 频段网关开启80-87 频段设备传感器端配置频点连接成功测试结果---chirpstackSL100系列温湿度传感器产品(墨水屏版)接入chirpstack 平台笔记记录 使用硬件…

mysql学习之数据系统概述

☀️马上要成为打工人,这几天把前面的知识都捡了捡,发现自己对关系数据库这块的学习还有所缺失,于是本章开始学习mysql 这里写目录标题1. 数据库系统的发展1.1 人工管理阶段1.2 文件系统阶段1.3 数据库阶段1.4 大数据阶段2 数据库系统的组成2…

了解这7个Node.js库,让你的开发效率提升不止一点点

Node.js是一个流行的JavaScript运行时环境,拥有庞大的生态系统和丰富的库,使得在Node.js上构建高效、可靠的应用程序变得非常容易。在这篇文章中,我们将分享七个有用的Node.js库,它们可以提高您的工作效率,让您更轻松地…

android:手搓一个即时消息聊天框(包含消息记录)

先看一下效果 1.后端 要实现这个,先说一下后端要实现的接口 1.创建会话id 传入“发送id”和“接收id”给服务端,服务端去创建“会话id” 比如 get请求:http://xxxx:8110/picasso/createSession?fromUserId1&toUserId2 返回seesionId…

【SSconv:全色锐化:显式频谱-空间卷积】

SSconv: Explicit Spectral-to-Spatial Convolution for Pansharpening (SSconv:用于全色锐化的显式频谱-空间卷积) 全色锐化的目的是融合高空间分辨率的全色(PAN)图像和低分辨率的多光谱(LR-MS&#xff…

HTML5 Web 存储

HTML5 Web 存储 在HTML5之前,主要是使用cookies存储,cookies的缺点有:需要在请求头上带着数据,存储大小不过,在4k之内。本节, HTML5 web 存储,一个比cookie更好的本地存储方式。 什么是 HTML5 …

Redis技术详解

Redis技术详解 Redis是一种支持key-value等多种数据结构的存储系统。可用于缓存,事件发布或订阅,高速队列等场景。支持网络,提供字符串,哈希,列表,队列,集合结构直接存取,基于内存&…

Proxmox VE 超融合集群虚拟的NFS服务性能很差的问题解决

作者:田逸(formyz) 场景描述 五节点Proxmox VE集群,万兆网络,数据网络与存储网络独立,接口两两bond,交换机堆叠。 单机配置两颗AMD 宵龙CPU,核心数48,单台线程数192,单台…

服务器版RstudioServer安装与配置详细教程

Docker部署Rstudio server 背景:如果您想在服务器上运行RstudioServer,可以按照如下方法进行操作,笔者测试时使用腾讯云服务器(系统centos7),需要在管理员权限下运行 Rstudio 官方提供了使用不同 R 版本的 …

Baumer工业相机中偏振相机如何使用Baumer堡盟GAPI SDK来进行偏振数据的计算转换输出(C++)

项目场景 Baumer工业相机堡盟相机是一种高性能、高质量的工业相机,可用于各种应用场景,如物体检测、计数和识别、运动分析和图像处理。 Baumer的万兆网相机拥有出色的图像处理性能,可以实时传输高分辨率图像。此外,该相机还具…

【ansible】管理变量与事实详解

目录 管理变量与事实 一,变量 1,变量命名 2,变量优先级(高--低) 3,命令行引用 4, 引用playbook中的变量 5, 在主机清单中定义变量 6, 在自定义变量文件中定义变量 7&…

Linux基础IO - 文件描述符、重定向

前面的文章中我们讲述了C语言中文件相关的操作与系统文件IO的接口,这篇文章中将会讲述文件描述符与重定向的知识。 运行在前文中的系统文件程序,通过观察可以看到图中的数据3非常的奇怪没头没尾的,下面我们就来从这里开始。 通过查看man手册…

console使用方法介绍

console是在写前端Javascript时经常会使用到,我平时使用最多的是console.log,相比大多数人也是如此吧! 下面一起来看一下强大的console吧! 01函数(属性) 包含如下函数 / 属性:memory、assert、c…