TML5 新的表單元素
HTML5 有以下新的表單元素:
<datalist>
<keygen>
<output>
注意:不是所有的瀏覽器都支持HTML5 新的表單元素,但是你可以在使用它們,即使瀏覽器不支持表單屬性,仍然可以顯示為常規的表單元素。
HTML5 <datalist> 元素
<datalist> 元素規定輸入域的選項列表。
<datalist> 屬性規定 form 或 input 域應該擁有自動完成功能。當用戶在自動完成域中開始輸入時,瀏覽器應該在該域中顯示填寫的選項:
使用 <input> 元素的列表屬性與 <datalist> 元素綁定.
實例
<input> 元素使用<datalist>預定義值:
<inputlist="browsers"><datalistid="browsers"><optionvalue="Internet Explorer"><optionvalue="Firefox"><optionvalue="Chrome"><optionvalue="Opera"><optionvalue="Safari"></datalist>
HTML5 <keygen> 元素
<keygen> 元素的作用是提供一種驗證用戶的可靠方法。
<keygen>標簽規定用于表單的密鑰對生成器字段。
當提交表單時,會生成兩個鍵,一個是私鑰,一個公鑰。
私鑰(private key)存儲于客戶端,公鑰(public key)則被發送到服務器。公鑰可用于之后驗證用戶的客戶端證書(client certificate)。
實例
帶有keygen字段的表單:
<formaction="demo_keygen.asp"method="get">用戶名: <inputtype="text"name="usr_name">加密: <keygenname="security"><inputtype="submit"></form>
嘗試一下 ?
HTML5 <output> 元素
<output> 元素用于不同類型的輸出,比如計算或腳本輸出:
實例
將計算結果顯示在 <output> 元素:
<formoninput="x.value=parseInt(a.value)+parseInt(b.value)">0<inputtype="range"id="a"value="50">100 +<inputtype="number"id="b"value="50">=<outputname="x"for="a b"></output></form>
HTML5 新表單元素
標簽 | 描述 |
---|---|
<datalist> | <input>標簽定義選項列表。請與 input 元素配合使用該元素,來定義 input 可能的值。 |
<keygen> | ><keygen> 標簽規定用于表單的密鑰對生成器字段。 |
<output> | <output> 標簽定義不同類型的輸出,比如腳本的輸出。 |
如您還有不明白的可以在下面與我留言或是與我探討QQ群{{308855039,我們一起飛!
們已經學過了很多標簽及標簽屬性了,這節課我們還要學一些HTML5對表單這一塊做了專門的修改,就是增加了一些新的標簽和新的屬性。讓表單結構更靈活。我們通過以下這幾方面給大家講解。
√新增表單元素
√新增表單屬性-input屬性
好了廢話不多說,直接看代碼吧!
一、 新增表單元素
a)email:用于輸入單一email地址或者email地址列表,提交表單的時候驗證輸入值是否滿足email格式。
b).url: 用于處理URL,在iPhone中非常好用,會出現對應的鍵盤布局,提交表單的時候驗證輸入值是否滿足url的格式。
c).number:用于包含數字值的輸入字段。您可以設置可接受數字的限制。根據你的設置提供選擇數字的功能,其中min最小值,max為最大值
d).range:會以一個滑塊的形式表現,包含一定范圍內數字值的輸入域,max為最大值,min為最小值,value為默認值,如果沒有設置max和min,默認值是1-100
e).search:用于顯示一個輸入搜索關鍵字的表單,若加上result=”s”屬性,則會在搜索框前面加一個搜索圖標。
f).tel:用于輸入電話號碼,驗證輸入的是否是電話號碼的格式。(以PC端無效果,在移動端使用該框時,會切換到數字鍵盤)
g).color:color類型會提供顏色拾取器,供用戶選擇顏色,并將用戶選擇的顏色填充到此元素中。
h).date:用于日期選擇的表單域,支持日期,月份,周。日期和時間類型
綜合案例:
頁面顯示效果
二、新增表單元素屬性(主講input新增的屬性)
a).autofocus: 在打開頁面時使元素自動獲取焦點 常給input,button,select,textarea 等標簽使用
<input type="password" name="pwd" autofocus="autofocus"/>
給密碼框使用之前
給密碼框使用之后
b). placeholder: 在用戶輸入時進行提示常應用在input,textarea等標簽
<input type="text" name="name" placeholder="請輸入公司名稱" />
c). required: 表明該元素是必填項,當提交表單的時候會自動驗證該元素的內容是否不為空 常給
input,textarea等標簽使用。
<input type="text" name="url" required="required" />
d). max/min/step限制值的輸入范圍,以及值的變化程度。新增number元素有介紹。 常給input標簽使用。
<input type="number" name="age" step="5" min="10" max="25"/>
e). autocomplete:使form元素或者input元素擁有自動完成功能,既記錄用戶之前輸入的值,
關閉為off,默認為on。 常給form,input使用
<input type="url" name="url" autocomplete="off"/>
值為off時:
值為no時:
f). multiple: 在選擇文件時,默認只能單選,加上這個屬性后,則可以使用鼠標選中多個文件進行上傳,或者給select標簽使用
<input type="file" name="file" multiple="multiple" />
h). formaction:重寫表單的action屬性, formmethod: 重寫表單的method屬性.
<input type="submit" value="提交" formaction="demo.html"
formmethod="post"/>
i). list特性和datalist 選值列表list屬性的值為datalist元素的id,datalist元素類似于選擇框,在文本框獲
得焦點的時候以提示輸入的方式顯示。
地址:<input type="text" list="item" name="address"/>
<datalist id="item">
<option value="1">北京</option>
<option value="2">上海</option>
<option value="3">深圳</option>
</datalist>
顯面效果:
j).新增form屬性
在我們之前的html中,表單元素必須放在form元素所包含的里面,在html5中,可以把他們寫在頁面上的任何一個地方,然后給該元素增加一個form屬性,form屬性的值為form表單的id。在form元素里面的表單元素可以不用添加form屬性,如果你想利用form獲取所有表單元素的值,那么在form元素外面的表單元素就必須添加form屬性,input、select、textarea等元素都滿足該功能。
代碼:
以后我們再寫頁面的時候可以使用新增的標簽及屬性了,有了這些標簽及屬性對于我前端的開發人員來說,真是一大幸事啊!
H5 誕生以來,在 html4.0 中有些元素已被 H5 廢棄,但是在 H5 中添加了很多新元素以及功能,今天我們學習 H5 中新增的元素和屬性都有哪些?
標簽 | 描述 |
<article> | 定義頁面獨立的內容區域。 |
<aside> | 定義頁面的側邊欄內容。 |
<bdi> | 允許您設置一段文本,使其脫離其父元素的文本方向設置。 |
<command> | 定義命令按鈕,比如單選按鈕、復選框或按鈕 |
<details> | 用于描述文檔或文檔某個部分的細節 |
<dialog> | 定義對話框,比如提示框 |
<summary> | 標簽包含 details 元素的標題 |
<figure> | 規定獨立的流內容(圖像、圖表、照片、代碼等等)。 |
<figcaption> | 定義 <figure> 元素的標題 |
<footer> | 定義 section 或 document 的頁腳。 |
<header> | 定義了文檔的頭部區域 |
<mark> | 定義帶有記號的文本。 |
<meter> | 定義度量衡。僅用于已知最大和最小值的度量。 |
<nav> | 定義導航鏈接的部分。 |
<progress> | 定義任何類型的任務的進度。 |
<ruby> | 定義 ruby 注釋(中文注音或字符)。 |
<rt> | 定義字符(中文注音或字符)的解釋或發音。 |
<rp> | 在 ruby 注釋中使用,定義不支持 ruby 元素的瀏覽器所顯示的內容。 |
<section> | 定義文檔中的節(section、區段)。 |
<time> | 定義日期或時間。 |
<wbr> | 規定在文本中的何處適合添加換行符。 |
新增標簽使用時根據描述內容,在適當的地方使用新標簽,應用的時候和其他標簽是一樣的,H5 新增標簽使得網頁結構更清晰明了,建議大家使用新增元素。
標簽 | 描述 |
<datalist> | <input>標簽定義選項列表。請與 input 元素配合使用該元素,來定義 input 可能的值。 |
<keygen> | <keygen> 標簽規定用于表單的密鑰對生成器字段。 |
<output> | <output> 標簽定義不同類型的輸出,比如腳本的輸出。 |
<datalist>屬性規定form或input域應該擁有自動完成功能,當input聚焦時,瀏覽器應該在域中顯示填寫的選項。
使用 input 元素與 datalist 元素綁定,使用時如下:
<form action="">
<input type="text" list="schooltype">
<datalist id="schooltype">
<option value="歐亞駕校">歐亞駕校</option>
<option value="鵬程駕校">鵬程駕校</option>
<option value="學車網">學車網</option>
</datalist>
</form>
<keygen>元素用于提供用戶驗證的方法,表單提交時,keygen生成表單密鑰對,一個是公鑰,一個是私鑰,私鑰存儲在客戶端,公鑰通過帶有keygen字段的表單發送給服務器。目前已被H5廢棄,我們作為了解就好。
使用實例如下:
<form action="">
用戶名<input type="text" name="user" /><br>
密碼<input type="password" name="se"> <br>
加密<keygen name="security"><br>
<input type="submit" value="提交">
</form>
<output>元素用于不同類型的輸出,對輸出結果的展示,如對兩個數值相加,并展示結果,代碼如下:
<form action="" oninput = "x.value=parseInt(a.value)+parseInt(b.value)">
<input type="range" id="a" step="1" min="0" max="100"> +
<input type="text" id="b" value="50">=
<output name="x" ></output>
</form>
上述form處添加oninput事件,對數值parseInt進行取整運算。
H5中新增表單屬性指 form 和 input 元素新增屬性。
form新屬性及意義
input新增類型和屬性
新的輸入類型 | 新的輸入屬性 |
|
|
input 和 form 的 autocomplete屬性
屬性規定 form 或 input 在當前域下擁有自動完成功能,通俗地講就是元素聚焦時,會自動展示之前輸入過的內容,內容是根據當前域名下之前使用過的數據。示例如下:
<form action="demo_form.asp" method="get" autocomplete="on">
First name: <input type="text" name="fname" /><br />
Last name: <input type="text" name="lname" /><br />
E-mail: <input type="email" name="email" autocomplete="on" /><br />
<input type="submit" />
</form>
頁面上顯示如圖:
表單重寫屬性:
min、max、step屬性
三者用于對數字、日期類型輸入框的限制和約束。
使用示例,請參照上output處的實例。
multipel屬性:規定輸入域中可選擇多個值。適用于 email 和 file 兩種類型。
pattern屬性:驗證input域的模式。模式pattern是正則表達式,適用于text、search、url、email、password。
以下是一些在H5中已廢棄的元素。
acronym、applet、basefont、big、center、dir、font、frame、frameset、noframes、strike、tt。
*請認真填寫需求信息,我們會在24小時內與您取得聯系。