分享表單設(shè)計經(jīng)驗,用戶體驗基本原則

0 評論 26307 瀏覽 26 收藏 24 分鐘

引言

幾年前當(dāng)我第一次看到Twitter的表單驗證時很驚訝. 對用戶界面呆板厭煩的你應(yīng)該知道我在說什么. 當(dāng)時我?guī)缀跖d奮的要跳起來.

Twitter精心設(shè)計的分離式表單驗證相當(dāng)引人注意.當(dāng)我輸入錯誤時右側(cè)彈出錯誤提示信息, 立即就能讓我消除錯誤.”在線驗證”幫助我明白什么是正確的方向. 我能感受到這種簡潔的形式是想跟我有個隨時的對話. 這是一個啟示! 我不必等待加載整個頁面來檢查這個表單添寫的是否正確.

這個體驗完全改變了我對表單的設(shè)計方法. 它讓我明白表單驗證意味著和用戶的交流并引導(dǎo)他們改正錯誤和不確定的輸入.

術(shù)語“表單驗證”可能需要一些說明。表單驗證是一門處理在一個web表單里檢查用戶提供的信息是否正確的技術(shù)。這個處理的輸出結(jié)果更多是情緒上的而不是技術(shù)上的。表單或者指出用戶操作錯誤,或者確認提供的數(shù)據(jù)是準(zhǔn)確的。給你一個例子:如果一個用戶在一個標(biāo)簽為“email address”的表單字段里提供了數(shù)據(jù),表單應(yīng)該檢查提供的文本是否在正確的格式(user@example.com)和提供的e-mail地址是否已經(jīng)注冊了。

通常來說,有兩種類型的表單驗證:

提交后驗證——當(dāng)用戶提供了所有數(shù)據(jù)同時提交表單之后,通常會點擊按鈕,信息會發(fā)送到服務(wù)器同時進行驗證。“驗證器”的返回信息發(fā)送會用戶的電腦同時它顯示一段確認的信息(“所有東西都正確!”)或者一系列的錯誤信息。

在線驗證——驗證信息在用戶輸入數(shù)據(jù)到表單字段后直接展示。通常,信息會展示在字段旁邊同時鼓勵用戶采取直接行動。

  表單驗證的重要性

表單驗證是web/手機瀏覽者與界面交互時重要的一個核心溝通流程。它的重要性遠超過我們所認識到的,不相信我?試想一下你經(jīng)常遇到的需要表單驗證的情形:

注冊/登錄表單

購物車 – 支付表單

郵件表單

在你的界面整個流程中這是一些重要的流程,不是嗎?你業(yè)務(wù)方面的努力可能全體現(xiàn)在這里了。.

比較一下在線和離線兩種狀態(tài)下的不同,這會讓事情進入一個熟悉的視角。讓我們做一個簡單的類比:表單驗證相當(dāng)于在購買東西之前和推銷員之間的一次談話-所有的事情還在成交的邊緣上。如果推銷員粗魯無禮并且拒絕提供幫助,你自然會離開商店不買他的東西.。如果推銷員很專業(yè),有禮貌并且樂于助人-你就會樂意掏錢包了。

大多數(shù)表單驗證都像是個粗魯無禮的推銷員。表單的錯誤提示信息形如:“數(shù)據(jù)庫錯誤!”,“錯誤的郵箱地址!”這樣的提示不僅沒有禮貌-還會導(dǎo)致用戶的高流失率。

缺乏溝通導(dǎo)致了不友好的業(yè)務(wù)設(shè)計,有很多類似的例子。Luke Wroblewski進行的研究清楚地表明了使用一個內(nèi)聯(lián)的表單驗證將帶來巨大的不同效果:

“相比我們的控制版本,內(nèi)聯(lián)驗證表單對數(shù)據(jù)的驗證信息顯示更加醒目并且更加友好。尤其是,我們看到的:

增加了22%的成功率,

減少了22%的錯誤率,

增加31%的滿意度,

完成時間縮短42%,

減少了47%時間的視覺停留。

這些不能被忽視。合理的表單驗證設(shè)計可能會大幅的提升你的業(yè)務(wù)量!

我們來跳出理論進入實踐,讓我們看看在實際設(shè)計中什么才是最好的設(shè)計方法,并且通過循序漸進的方式來設(shè)計一個完美的表單驗證。

興奮了吧?

下面使用的每一個例子都可以在UXPin – The UX Design App下載.。

  避免困惑

通常來說一個好的表單驗證包含下面的四個重要元素:

 合適的時間?通知驗證的成功與失敗

 合適的地方?來顯示驗證信息

  合適的顏色

  清晰的表達

所有的這些元素有一個清晰的目標(biāo):避免困惑。困惑是表單轉(zhuǎn)化的死敵。如果你不想冒用戶流失率的風(fēng)險,創(chuàng)建一個消除用戶困惑的表單驗證。這是一條通往高轉(zhuǎn)化率的路子。

  合適的時間

正如我們在Luke Wroblewski的研究例子中看到的-顯示成功/失敗信息的合適時間是在用戶提交信息后。內(nèi)聯(lián)表單驗證會立刻通知用戶輸入數(shù)據(jù)的正確性,這也提高了用戶的轉(zhuǎn)化率。

Twitter就是個典型的例子,他們做了大量的工作來避免用戶產(chǎn)生困惑。

在下面的截圖中你可以看到我試圖使用一個已使用的郵箱地址注冊,表單會提示我應(yīng)該在第二步停下并且讓我考慮其他備選方案,這樣我就不會對最終的結(jié)果失望了。傳統(tǒng)的“提交驗證”需要等我填寫完整個表單后,重新加載頁面才讓我知道哪些地方填寫的不合理。

Twitter 選擇了一個更好的時機讓我們停下 – 這是毫無疑問的。立即響應(yīng)的形式為我節(jié)省了大量的時間(是的,3分鐘對于一天來說是個巨大的浪費)。

更棒的是什么 — Twitter實際上嘗試作為一個熟人和我們進行一場談話。多虧了內(nèi)聯(lián)驗證,它可以立刻提供給我們一些選擇?;蛟S我是這個郵箱賬號的主人,那么我只想登錄?誰曉得呢-也許我只是忘記了密碼?

這不僅是一個漂亮的表單驗證,它也增加了表單的轉(zhuǎn)化率;同時這也是一個頂級的客戶服務(wù)。

  Etsy 表單驗證 – Error Message

Etsy Form Validation Error Message Wireframing Template
  Etsy 表單驗證 –?Upload Wireframing Template to UXPin

如果表單的結(jié)構(gòu)沒有給你足夠的空間顯示清晰的錯誤信息,你可以使用Vimeo這種形式。

Vimeo Form Validation Error Message UI Design Pattern
  Vimeo 表單驗證 – Error Message

Vimeo,使用提示條的形式來顯示錯誤的字段信息,避免了布局的混亂。顏色的相關(guān)性也是很有用的,錯誤的字段紅色的信息提示和一個紅色的背景、邊框相一致。

錯誤信息被放在了操作上下文的位置,提供了一個很好的溝通基礎(chǔ)。

當(dāng)然這里的問題是“提交驗證”需要等到服務(wù)器驗證通過后才能獲取錯誤信息。然而,對于這樣一個短小的表單,我不希望它是一個關(guān)鍵性的設(shè)計錯誤。

Vimeo Form Validation Error Message Wireframing Template
  Vimeo Form Validation –?Upload Wireframing Template to UXPin

Twitter 表單驗證 – 錯誤信息

  Twitter 表單驗證 – 錯誤信心 –?Upload Wireframing Template to UXPin

  合適的位置

驗證信息所在的顯示位置與正確的顯示時機一樣重要。在討論的Twitter例子中-如果提示信息不在文本域后面,而是在它下面,我就不會很快的注意到它。如果我沒有留意它···好吧,這將產(chǎn)生了困惑,迫使我離開沒有完成的表單。

當(dāng)你疑惑把驗證信息放在哪個位置時,遵循下面的一條原則-總是把信息放到操作的上下文中。如果你想通知用戶一個特殊字段發(fā)生了錯誤-在文本域后面顯示信息,如果錯誤是通用的(比如向服務(wù)器發(fā)送數(shù)據(jù)錯誤)并且沒有刷新頁面-可以在提交按鈕后面顯示信息,如果刷新了頁面-在頁面的頂部顯示信息。

看看下面的例子。Light CMS把錯誤信息顯示到了每一個文本域的下一行,這很容易注意和理解它。

Light CMS Form Validation UI Design Pattern
  Light CMS 表單驗證 – Error Message

Light CMS Form Validation Wireframing Template
  Light CMS 表單驗證 –?Upload Wireframing Template to UXPin

Etsy的表單也是一個很好的放置驗證信息位置的例子。在這種情況下我也很喜歡表單的結(jié)構(gòu)和錯誤信息的視覺效果。明確的劃分成段(使用facebook注冊,主要的注冊表單)為注冊流程提供了清晰的向?qū)А?/p>

錯誤信息有了一個可視化的視覺效果-文本域使用紅色邊框標(biāo)紅并且有了一個紅色的信息框-溝通的意圖清晰明了。

  恰到好處的色彩

顏色就像數(shù)字1、2、3一樣簡單–錯誤為紅色,通知為藍色,警告為黃色,成功確認為綠色。這個色系是你能想到的最直觀的搭配。至少其中一部分(紅和黃可以使人引起注意并提高血壓)被進化備份乃至整個系統(tǒng)的顏色–意味著已存在,比如在公路上。不要混淆它,你就會沒事。

在上面所有例子中,我們已在實際中見過這個規(guī)則。讓我們回顧一下一些更有趣的解決方案,這樣你將更有靈感。當(dāng)談到合適的表單驗證時,我們再看看Twitter規(guī)則,確認信息被非常清晰地用綠色標(biāo)記并且將小的驗證圖標(biāo)嵌入到整個大框體中。

注意密碼輸入字段。綠色的指示條顯示了你密碼的安全級別。任務(wù)完成,享受它吧!

Twitter Form Validation Confirmation Message UI Design Pattern
  Twitter Form Validation – Confirmation Message

  Twitter Form Validation –?Upload Wireframing Template to UXPin

Pinterest也是一個在驗證信息中使用合理色彩的有趣例子。一個紅色的框環(huán)繞整個文本域,錯誤信息被著重強調(diào),整齊的內(nèi)聯(lián)驗證使他成為了一個完美的解決方案。.

Pinterest Form Validation Error Message UI Design Pattern
  Pinterest Form Validation – Error Message

再關(guān)注下表單的結(jié)構(gòu),六個字段被分成兩個區(qū)段。一個區(qū)段是關(guān)于登錄到服務(wù)器的信息和要求格式。另一個區(qū)段是個人信息-姓名和性別。這樣的劃分很有意義,因為你的姓名和性別不是必填項。

然而,沒有指明哪些字段是必填項哪些是非必填項,用戶處在一個盲區(qū)的邊緣。人們可能會感覺這是在誘使他們輸入姓名和性別(可能用于定位廣告宣傳的原因)。

我可以看到他們獲取數(shù)據(jù)非常有效的策略,但是我將小心的做這樣的實踐。通常,我推薦在注冊流程完成后詢問用戶是否要填寫非必要信息。

  Pinterest Form Validation –?Upload Wireframing Template to UXPin

  正確的語言

最后,是語言——這也是一個坑爹的地方。我本來想找個恰當(dāng)?shù)睦樱上д伊撕芫枚疾蝗缫狻?/p>

作為一條驗證消息,它應(yīng)該能夠清晰地表明:

當(dāng)前發(fā)生了什么事

下一步用戶應(yīng)該做什么(成功的確認消息除外)

還應(yīng)避免使用專業(yè)術(shù)語。

盡管這幾條規(guī)則看起來很簡單,但往往會被人們忘記。比如,光光告訴用戶“Email無效”,卻不說明為什么無效(到底是輸入錯誤呢,還是已被其他人占用?)這會給用戶帶來困擾,十分危險。

當(dāng)然,又要拿Twitter來說事兒了,它的語言用的相當(dāng)簡明扼要。如果你的Email地址可用,Twitter會告訴你「我們會把確認信息Email給你」;如果Email早已被其他人注冊過了,她會讓你選擇,是登錄呢,還是恢復(fù)密碼。如果你創(chuàng)建了一個很完美的密碼,她甚至?xí)淠恪竿昝赖拿艽a!」

是不是很nice?所有這一切,都像是日常閑聊一樣自然。

Delicious在表單驗證方面犯了許多錯,不過在語言這個部分倒是蠻有意思的。

Delicious Form Validation Error Message - UI Design Pattern
  Delicous的表單驗證 – 錯誤消息

首先,他們在密碼輸入的地方加了提示信息“試試用句子作為強密碼?!保@個我超喜歡。很不錯吧?這種東西我可等了好久了。在密碼的安全性方面確實很有意義,比那種要求用戶使用大寫字母和數(shù)字什么的做法要好太多了。

然后,Delicous在提示用戶名錯誤的時候也做的很漂亮:

1) “抱歉,用戶名marcin已經(jīng)被別人用了” – 很明確地告訴用戶發(fā)生了什么事情。

2) “請選擇另一個名字” – 明確地告訴用戶下一步應(yīng)該做什么。

可惜,他們忘了一個后備選項。萬一我已經(jīng)有賬號,只是一下子忘了這回事而已?

不管怎么說,Delicous雖然在時間、地點、顏色等等各個方面都搞砸了,但是勝在語言方面干的不壞,所以它們的表單依然還具有相當(dāng)?shù)目捎眯?。反過來也說明,語言是多么重要啊。

Delicious Form Validation Error Message Wireframign Template
  Delicous表單驗證

  總結(jié)

在表單驗證方法我們看到了很多經(jīng)典例子,但是我們?nèi)匀粵]有看到一個完美的。接下來我們將創(chuàng)建一個例子來演示下遵循下面的四個規(guī)范的表單驗證是多么簡單:

  合適的時間 通知驗證的成功與失敗

  合適的地方 來顯示驗證信息

  合適的顏色

  清晰的表達

  一步步的教程!

按照上面提到的四個簡單原則,我們創(chuàng)建一個完美的表單驗證。表單驗證最小化了在服務(wù)端流失一個用戶的風(fēng)險。

為了證明我的觀點,我將設(shè)計一個分區(qū)段的表單,包含額外的一些非必填信息。有些地方很類似于Pinterest的表單。如我所言,通常我不推薦使用那樣的方式,但是如果你確實需要,你可以通過做一些處理讓用戶使用起來感覺更簡單。

  1. 結(jié)構(gòu)& 頭部

Step 1. Structure
  我將從表單的結(jié)構(gòu)和頭部開始。表單結(jié)構(gòu)很簡單,白色的區(qū)域是必填字段區(qū)域,灰色的部分是非必填字段,附加信息。

我只需畫一個簡單的盒子,填充空白地方,加上我的設(shè)計結(jié)構(gòu)

接下來增加一個表頭-一些普通的文本,把打動人心的信息作為副標(biāo)題。再次-我正尋找一種解決混亂布局的方案。

  2. 表單字段

接下來這一步,我將在表單中添加文本域和標(biāo)簽。因為我強烈反對在文本域內(nèi)寫標(biāo)簽(非?;靵y,如果你在文本域里輸入信息,停頓數(shù)分鐘后再開始···這里沒有一個指示告訴你輸入什么),我將把它們放在表單文本域的上面。

Step 2. Form fields and structure
  此外,我添加了兩個子表頭來解釋每個區(qū)段提供哪些類型的信息。

  3. 表單字段信息

表單字段信息是一個容易忽略的地方,但是作為與用戶會話的一個開始是非常有用的。通過使用一句或者最多兩個句子,你可以解釋一些用戶疑慮的事情像“為什么我需要填寫郵箱?”,這樣和用戶之間建立一個基本的信任。

接下來我將在幾乎所有的文本域上添加相關(guān)信息:

用戶名 – “XYZ里面你的名字,你也可以用來登錄系統(tǒng)。”

E-mail 地址 – “我們將發(fā)送一個確認信息,并且使用它來和您做基本溝通。不是垃圾郵件喲:)”

密碼– “為了安全性-請使用一句容易記住并且難以破解的話!”

名字 – “在交流時我們方便通過真實名字稱呼您!”

性別– “方便告訴我們?yōu)槟喼七m合你的服務(wù)!”

  這些額外的信息可能不是必須的,但是它是開始一段用戶“關(guān)系”的出發(fā)點。對于用戶寧可多言,也不要讓用戶感覺困惑。

  4. 錯誤信息

當(dāng)涉及到錯誤信息時,我們需要認真考慮下我們的原則。

顯示錯誤信息的合適時機是在發(fā)現(xiàn)錯誤后。我們設(shè)計為內(nèi)聯(lián)驗證。

顯示錯誤信息的合適的地方是在文本域后面-所以我要把附加信息放到文本域下面,在后面顯示錯誤信息

顯示錯誤信息合適的顏色當(dāng)然是紅色,我把一個紅色背景盒子放到整個錯誤字段下面。

清理掉不專業(yè)的用語-如“數(shù)據(jù)庫錯誤”等。

看一下結(jié)果:

  通過以上的流程我想我的錯誤信息給用戶起到“解釋”和“向?qū)А弊饔?。我努力試著不給用戶留下任何疑問,這會讓用戶在離開表單時沒有任何需要修改的數(shù)據(jù)了。這是完整的文本:

– 用戶名 錯誤– “用戶名已經(jīng)存在了,請保證用戶名的唯一性。如果這是你的用戶名請嘗試:

* 登錄或者重置密碼

如果不是你的用戶名 – “請先注冊一個新用戶吧”

– E-mail 錯誤– “郵箱地址不正確,檢查下你輸入的是否正確。或許你忘記了某個地方的 “.” 或者 “@”?”

– 密碼 錯誤– “試著把密碼設(shè)定長些。輸入一句話是一個不錯的主意!如果你喜歡冒險-最少允許輸入3個字符”

在這些錯誤信息中你能看到我們提過的模式嗎?我明確的指出了某個問題,然后立刻給出了解決方案。

  確認信息

最后是確認信息,對設(shè)計來說,這純粹是為了高興。在輸入文本字段后彈出操作正確,我就決定想出一個更微妙的解決方案。我不想人們停在確認信息上。他們可以快速掃描這些信息并跳到之前他們感覺良好的某個字段。

沒有多余的彩色信息,沒有長長的句子–只是一個快速確認信息。

Step 5. Confirmation Message
  這就是驗證信息,像1、2、3那樣簡單。表單驗證符合我們的四個規(guī)則。它沒有損害,不是嗎?如果你喜歡這個表單,把它上傳到UXPin然后在你的設(shè)計中自由地運用。

你需要更多的細節(jié)嗎?那就看看按視頻一步步做吧.

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發(fā)揮!