autocapticalize和autocorrect

首字母自動大寫autocapitalize

在 iOS 中,用戶能夠手動開啓「首字母自動大寫」功能,這樣輸入英文的時候,首字母便會自動大寫。可是,有些時候並不但願一直是首字母大寫的。好比用戶名這個字段,若是字段自己就是區分大小寫的,首字母自動大寫每每會給用戶帶來麻煩。能夠經過在表單元素上能夠經過設置autocapitalize="off"來關閉。html

<input type="text" autocapitalize="off" placeholder="用戶名-關閉首字母大寫">

還能夠在form元素上設置該屬性,讓裏面的每一個元素都繼承autocapitalize的設置。api

<form autocapitalize="off">
  <input type="text"  placeholder="繼承 form 的設置">
  <textarea></textarea>
</form>

iOS 5 開始新增了不少關鍵字:code

none等同於ofform

當設置了autocapitalize="words"時,每一個單詞的開頭字母會自動大寫。htm

當設置了autocapitalize="characters"時,每一個字母都會大寫。繼承

當設置了autocapitalize="sentences"時,每句開頭字母會自動大寫。get

這裏有一個綜合示例input

<form autocapitalize="words">
  名字: <input name="first-name">
  姓氏: <input name="last-name">
  國家: <input name="state" autocapitalize="characters">
  暱稱: <input name="username" autocapitalize="off">
  評論: <textarea name="comment" autocapitalize="sentences"></textarea>
</form>

須要注意幾點:it

<input type="password" >始終不會開啓自動首字母大寫。ast

若是在設置中沒有開啓「首字母大寫」,即便設定autocapitalize="on"也不會有做用。 (設置方法: 在設置→通用→鍵盤中開啓「首字母自動大寫」)

若是「自動改正」和「首字母大寫」都啓用了,那麼提示的字母也是首字母大寫的。

越獄後安裝的中文輸入法裏自帶的英文輸入模式可能會不支持「首字母自動大寫」功能。

在刪除後,再次輸入依然是大寫的,這一點體驗比黑莓好。

自動改正autocorrect

這是一個布爾屬性,能夠設置off來關閉,一樣能夠設置在form元素上

<input type="text" autocorrect="off" placeholder="用戶名-關閉自動改正">

參考

爲移動而生的 HTML 屬性autocapitalize和autocorrect

相關文章
相關標籤/搜索