表单宽度应该如何定义?

Recommand
西安/UX设计师/5年前/2542浏览
表单宽度应该如何定义?Recommand
MiFan菌

全文 1800 字左右,图文阅读需约 5 分钟,

本篇文章观点来源于(Golevka),再次总结分享,希望对各位有所帮助。

表单设计作为基础通用组件,在我们的各类设计场景中是出现最高频的元素之一。


无论从登录页的基础表单,还是到复杂的分组或分步表单,都是我们经常会用的控件和模块,对于表单的基础控件的分类和使用方法,相信大家都已经很熟悉了,这里不多赘述。


今天想和大家聊聊一个,平时可能会忽视但实则有些重要的问题——表单的宽度应该如何定义?


我们可以先看看一些实际案例:


undefined

undefined

undefined

undefined


可以看出,我们通常碰到的表单设计可以由三种方式去呈现宽度:

1.  固定宽度;

2.  空间自适应 ;

3.  内容自适应(CheckBox+Radio+Data/Time-picker);


undefined


那么问题来了:

1.  简单粗暴的空间自适应从视觉上会让用户心理负担会很重,区域跨度太大,重点任务不能很好的视觉聚焦;

2.  Input定宽排版,解决了解决焦点的问题,但出现了另一个问题就是造成页面大面积留白,出现分割和残缺的错觉,也会给用户一种每个表单的内容很相似,不能直观的区分表单类型;


面对这类问题,Golevka倡导进行合理的定宽,核心原因以下两点:

1.  跟随空间自适应易造成 input 及其附属的元素展示非常不稳定,会出现以下缺失或过度的问题。


undefined


2.  其实在实际业务中,产品经理一般都会给出每个表单的字段数量限制,这就给我们一个input框的间接理想长度,Input的宽度应该向用户暗示需要输入的内容长度是多少,来减少判断负担。


从下图也可以看出来,右侧的错落有致会比左侧整齐划一更舒适,更有呼吸感,

左侧过度的对齐会给用户感觉右侧缺了一部分,没显示出来。


undefined


当然错落有致必须得有个规则,无规矩不成方圆,也没法系统的沉淀出设计规范去延展,

我们的目标就是让表单设计有规律的错落有致,这时候就想到了【栅格系统】:


undefined


它的原理就是将空间自动计算分割成12/24栏,每一栏则是最小单位,再用最小单位组成不同类型宽度的容器,

这样出来的页面呈现会给人一种秩序美的感觉。


有了这个思路,解决这一问题的核心关键是让组合Input 和单个Input 对齐概率最大化,同时不同行的 input 宽度差值可以呈一个固定规律。


我们就可以先确认最小单位的Input框长度了,Golevka给出的小小宽度刚好是可以满足4个汉字的Selection 和 9999.00 的Number input,以Ant Design 视觉规范推导即等于 104px。


undefined


然后设定 104px 为原子级宽度尺码 XS,通过倍数+间距叠加的方式(此处计算间距的原因是为了兼顾组合 input 和单个 input 对齐问题)从小到大去依次推导出更大的四种宽度来拟合前面划分的尺码。最终我们得到了如下5种宽度尺码和对齐关系。


undefined


经过一定量的设计稿模拟测试,在各复杂度的组合input和单input混排场景下都可以看到实际效果得到显著改善。


undefined

undefined


上述的最小宽度104px这个数值,其实也是根据实际业务场景来决定的,没必要生搬硬套,这一套宽度的关系才是核心,原子宽度无论数字怎么变,都可以快速得出新的5种尺寸。


还有个问题就是上述的表单设计规范现只适合基础的、个数少的业务场景,对于B端复杂的表单场景还是得根据前端的栅格系统来规范,对于Input长度和排列效果肯定是有些问题妥协的。


undefined


下面我们上手一个B端场景的复杂表单优化练习(实际案例)

请看下图


undefined


各位可以给自己2-3分钟先思考下有哪些问题,可以怎么优化...



                

Thinking...

                

Thinking...

                

 Thinking...

                

 Thinking...

                

Thinking...

                

 Thinking...

                

Thinking...

                

Thinking...


Thinking...


                


                

发现问题:

1.  所有的Input宽度为两个尺寸,有些字段和输入框长度不匹配;

2.  布局排列左侧过度对齐,右边留白太多;

3.  表单信息简单粗暴的堆积在一起,且满屏必填的“*”号,用户心理负担重;


分析问题:

1.  采用表单的原子宽度为104px,根据公示推导出其他宽度大小;

2.  对于组合表单间距定为8px,排列表单间距定为24px;

3.  堆积的表单进行分组和锚链接展示;

4.  相关性强的表单进行合并;


解决问题:


undefined

总体来说,比优化前整体页面效果和交互优化上有了很大提升,现在的页面是理论输出的效果,

别忘了还有一项重要的表单验证环节,和产品经理确认现在的Input宽度是否能承载实际业务场景的字段数量,有问题的表单需要特殊处理下就Ok了。  


总的来说,表单设计把握好两个核心点:


1. 暗示填写内容长度;

2. 表单项布局排列效果;


通过设置合理的默认宽度尺码和描述关系,可以让业务设计师们跳过部分繁琐磨人的细节思考,快速搭建表单宽度合理且舒适的页面,事半功倍。


本次分享如果各位同学觉得有用,可以帮忙点点【推荐】哦,你们的鼓励也是我搬砖的动力。


THANKS~


30
Report
|
70
Share
相关推荐
评论
in to comment
Add emoji
喜欢TA的作品吗?喜欢就快来夸夸TA吧!
推荐素材
You may like
相关收藏夹
B端文章
B端文章
B端文章
B端文章
作品收藏夹
文章教程
文章教程
文章教程
文章教程
作品收藏夹
文章
文章
文章
文章
作品收藏夹
后台设计
后台设计
后台设计
后台设计
作品收藏夹
B端
B端
B端
B端
作品收藏夹
表单设计+理论
表单设计+理论
表单设计+理论
表单设计+理论
作品收藏夹
大家都在看
Log in