html 5 使用者輸入元素 (ui elements) 新屬性
- 說明: html 5 在填表相關元素 (form-associated elements) 增加了不少有用的屬性 (attributes) 。有的是強化使用者易用性,也使觸控裝置有了處理的原則。有的是在瀏覽器增加了驗證 (form validation) 功能,簡化了以往只能倚賴的複雜的 javascript 程序。
- 適合:有 html 語法基礎概念者。
- 難度:
- 更新:
- 支援:詳細可參考 MDN 的整理。
散佈、展示請參閱 Creative Commons 授權條文,禁止重混,引述請增加原文連結。
友善的填表介面
placeholder
₪:placeholder-shown
css level 4 pseudo-class 可指定有placeholder
元素的設計樣式。autofocus
₪autofocus
有作用。autocomplete
₪autocomplete="on"
;瀏覽器會記錄該項使用者曾經輸入並送交的內容,日後輸入時會將記錄顯示成下拉選項,方便使用者直接挑選就可以完填,不需要再從頭到尾輸入。autocomplete="off"
,則指定瀏覽器不要顯示下拉選項。list
₪list
屬性值指定為datalist
元素的id
值,在輸入項上輸入時,瀏覽器會取得該datalist
中可能的選項顯示成下拉選項。datalist
的子項option
的value
值;如果沒有value
值,就取得option
的內容作為值。datalist
的選項內容。datalist
元素本身不會顯出,不限制置於文件中任何元素下。list
屬性無法限制輸入內容,使用者仍可輸入非選項中的內容。需要限制輸入,可使用pattern
屬性 。select
元素不同,這個方式在觸控裝置不再是不易操作的下拉鈕。驗證 (validation)
required
₪:required
css level 4 pseudo-class 可指定required
元素的設計樣式。pattern
₪pattern
屬性值,可過濾輸入內容。/
建構符號,與平常語法不同,因此也沒有 flags。title
₪min|max|step
₪max, min
) ,可以是數值或日期時間值;step
指定單位增減值 (每按一次鈕),接受小數值。novalidate
₪form
的專用屬性,瀏覽器會停止驗證,但不會阻礙像是運用 Javascript 處理的驗證。:invalid, :valid
css level 4 pseudo-class 可指定form
或其輸入項元素,驗證不過或通過的設計樣式。formnovalidate
₪novalidate
,差別是此為 submit 送交鈕的專用屬性 。form
元素的下層時,就顯得有用了。輸入項不必是
form
元素的下層form
₪form
元素下層,以form
屬性指定應屬的form
元素的id
。form
元素的下層,可讓 html 結構及動態內容更具彈性。