--- title: HTML attribute reference slug: Web/HTML/Attributes translation_of: Web/HTML/Attributes ---
HTML 中的元素具有屬性 ; 而這些屬性可以藉由各種方式去設定元素或調整它們的行為,以符合使用者的期待。
屬性名稱 | 元素 | 描述 |
---|---|---|
hidden |
Global attribute | 避免呈現給定的元素,並且保持子元素,例如 script elements、active。 |
high |
{{ HTMLElement("meter") }} | 指示下界的上限範圍。 |
href |
{{ HTMLElement("a") }}, {{ HTMLElement("area") }}, {{ HTMLElement("base") }}, {{ HTMLElement("link") }} | 連結資源的 URL。 |
hreflang |
{{ HTMLElement("a") }}, {{ HTMLElement("area") }}, {{ HTMLElement("link") }} | 指定連結資源的語言。 |
http-equiv |
{{ HTMLElement("meta") }} | |
icon |
{{ HTMLElement("command") }} | 指定呈現指令的圖片。 |
id |
Global attribute | 經常和 CSS 一起被用來設計特定元素。這個屬性的值必須是唯一的。 |
ismap |
{{ HTMLElement("img") }} | 指示該圖像是伺服器端之影像地圖的一部分。 |
itemprop |
Global attribute | |
keytype |
{{ HTMLElement("keygen") }} | 指定所生成密鑰的類型。 |
kind |
{{ HTMLElement("track") }} | 指明文章 track 的類型。 |
label |
{{ HTMLElement("track") }} | 指明文章 track 的使用者可讀之標題。 |
lang |
Global attribute | 定義該元素中所使用的語言。 |
language |
{{ HTMLElement("script") }} | 定義該元素中所使用的腳本語言。 |
list |
{{ HTMLElement("input") }} | 指示一串預先定義的選項供使用者參考。 |
loop |
{{ HTMLElement("audio") }}, {{ HTMLElement("bgsound") }}, {{ HTMLElement("marquee") }}, {{ HTMLElement("video") }} | 指示當媒體完成時,是否應該從一開始的時候播放。 |
low |
{{ HTMLElement("meter") }} | 指示上界的下限範圍。 |
manifest |
{{ HTMLElement("html") }} | 指定文件中緩存清單的 URL。 |
max |
{{ HTMLElement("input") }}, {{ HTMLElement("meter") }}, {{ HTMLElement("progress") }} | 指示所允許的最大值。 |
maxlength |
{{ HTMLElement("input") }}, {{ HTMLElement("textarea") }} | 定義該元素中所允許的最大字元數目。 |
media |
{{ HTMLElement("a") }}, {{ HTMLElement("area") }}, {{ HTMLElement("link") }}, {{ HTMLElement("source") }}, {{ HTMLElement("style") }} | 指定一些連接資源已經被設計的媒體。 |
method |
{{ HTMLElement("form") }} | 定義當呈交該格式時,哪個 HTTP 方法要被使用。可以用 GET(預設)或是 POST。 |
min |
{{ HTMLElement("input") }}, {{ HTMLElement("meter") }} | 指示所允許的最小值。 |
multiple |
{{ HTMLElement("input") }}, {{ HTMLElement("select") }} | 指示多個值是否可以進入單一輸入的 email 或是 file 之類別。 |
name |
{{ HTMLElement("button") }}, {{ HTMLElement("form") }}, {{ HTMLElement("fieldset") }}, {{ HTMLElement("iframe") }}, {{ HTMLElement("input") }}, {{ HTMLElement("keygen") }}, {{ HTMLElement("object") }}, {{ HTMLElement("output") }}, {{ HTMLElement("select") }}, {{ HTMLElement("textarea") }}, {{ HTMLElement("map") }}, {{ HTMLElement("meta") }}, {{ HTMLElement("param") }} |
元素的名字。例如被伺服器所使用時,來識別格式提交的現場。 |
novalidate |
{{ HTMLElement("form") }} | 該屬性指示當本格式被提交時,並無法通過驗證。 |
open |
{{ HTMLElement("details") }} | 指示是否細節顯示於加載頁面上。 |
optimum |
{{ HTMLElement("meter") }} | 指示最佳化數值。 |
pattern |
{{ HTMLElement("input") }} | 定義一個元素值將被驗證的正規表達式。 |
ping |
{{ HTMLElement("a") }}, {{ HTMLElement("area") }} | |
placeholder |
{{ HTMLElement("input") }}, {{ HTMLElement("textarea") }} | 提示使用者什麼可以被輸入進該區。 |
poster |
{{ HTMLElement("video") }} |
顯現一個指示 poster frame 的 URL,直到使用者撥放或是搜索。 |
preload |
{{ HTMLElement("audio") }}, {{ HTMLElement("video") }} | 指示是否整個資源、一部分的資源、或是沒有資源應該被預先裝載。 |
pubdate |
{{ HTMLElement("time") }} | 指示該日期和時間,是否和距離最近的 {{ HTMLElement("article") }} 舊元素的日期一樣。 |
radiogroup |
{{ HTMLElement("command") }} | |
readonly |
{{ HTMLElement("input") }}, {{ HTMLElement("textarea") }} | 指示是否該元素可以被編輯。 |
rel |
{{ HTMLElement("a") }}, {{ HTMLElement("area") }}, {{ HTMLElement("link") }} | 指定目標物件和連結物驗的關係。 |
required |
{{ HTMLElement("input") }}, {{ HTMLElement("select") }}, {{ HTMLElement("textarea") }} | 指示該元素是否被要求填寫。 |
reversed |
{{ HTMLElement("ol") }} | 指示該目錄是否應以降序展出而不是升序。 |
rows |
{{ HTMLElement("textarea") }} | 定義 textarea 的行數。 |
rowspan |
{{ HTMLElement("td") }}, {{ HTMLElement("th") }} | 定義表格單元的行數應該被 span over。 |
sandbox |
{{ HTMLElement("iframe") }} | |
spellcheck |
Global attribute | 指示為該元素的拼字檢查是否允許。 |
scope |
{{ HTMLElement("th") }} | |
scoped |
{{ HTMLElement("style") }} | |
seamless |
{{ HTMLElement("iframe") }} | |
selected |
{{ HTMLElement("option") }} | 定義一個值將被選擇到上載頁面中。 |
shape |
{{ HTMLElement("a") }}, {{ HTMLElement("area") }} | |
size |
{{ HTMLElement("input") }}, {{ HTMLElement("select") }} | 定義元素的寬度 (以 pixel 為單位) 。如果該元素之類型的屬性是文本或是密碼,那麼它就是字元的數目。 |
sizes |
{{ HTMLElement("link") }} | |
span |
{{ HTMLElement("col") }}, {{ HTMLElement("colgroup") }} | |
src |
{{ HTMLElement("audio") }}, {{ HTMLElement("embed") }}, {{ HTMLElement("iframe") }}, {{ HTMLElement("img") }}, {{ HTMLElement("input") }}, {{ HTMLElement("script") }}, {{ HTMLElement("source") }}, {{ HTMLElement("track") }}, {{ HTMLElement("video") }} | 可嵌入內容的網址。 |
srcdoc |
{{ HTMLElement("iframe") }} | |
srclang |
{{ HTMLElement("track") }} | |
srcset |
{{ HTMLElement("img") }} | |
start |
{{ HTMLElement("ol") }} | 如果第一個數字不是 1 的話,則定義該數。 |
step |
{{ HTMLElement("input") }} | |
style |
Global attribute | 定義多載先前的樣式設定之 CSS 樣式。 |
summary |
{{ HTMLElement("table") }} | |
tabindex |
Global attribute | 多載瀏覽器的預設頁面標籤之順序並且遵守指定的那個。 |
target |
{{ HTMLElement("a") }}, {{ HTMLElement("area") }}, {{ HTMLElement("base") }}, {{ HTMLElement("form") }} | |
title |
Global attribute | 當滑鼠標停在元素時,文本會顯示在工具提示中。 |
type |
{{ HTMLElement("button") }}, {{ HTMLElement("input") }}, {{ HTMLElement("command") }}, {{ HTMLElement("embed") }}, {{ HTMLElement("object") }}, {{ HTMLElement("script") }}, {{ HTMLElement("source") }}, {{ HTMLElement("style") }}, {{ HTMLElement("menu") }} | 定義元素的類型。 |
usemap |
{{ HTMLElement("img") }}, {{ HTMLElement("input") }}, {{ HTMLElement("object") }} | |
value |
{{ HTMLElement("button") }}, {{ HTMLElement("option") }}, {{ HTMLElement("input") }}, {{ HTMLElement("li") }}, {{ HTMLElement("meter") }}, {{ HTMLElement("progress") }}, {{ HTMLElement("param") }} | 定義將顯示在加載頁面上元素的預設值。 |
width |
{{ HTMLElement("canvas") }}, {{ HTMLElement("embed") }}, {{ HTMLElement("iframe") }}, {{ HTMLElement("img") }}, {{ HTMLElement("input") }}, {{ HTMLElement("object") }}, {{ HTMLElement("video") }} | 注意 : 在有些情況中,例如 {{ HTMLElement("div") }},這是傳統的屬性,而 CSS {{ Cssxref("width") }} 特性應當被使用。在其他的情況中,例如 {{ HTMLElement("canvas") }} ,寬度必須用該屬性來指定。 |
wrap |
{{ HTMLElement("textarea") }} | 指定文章是否要被掩飾。 |
border |
{{ HTMLElement("img") }}, {{ HTMLElement("object") }}, {{ HTMLElement("table") }} |
邊界寬度。 注意 : 這是一個傳統的屬性。請利用 CSS {{ Cssxref("border") }} 特性。 |
buffered |
{{ HTMLElement("audio") }}, {{ HTMLElement("video") }} | 包含被緩衝之媒體的時間範圍。 |
challenge |
{{ HTMLElement("keygen") }} | 隨著公共密鑰提交的挑戰字串。 |
charset |
{{ HTMLElement("meta") }}, {{ HTMLElement("script") }} | 聲明頁面或腳本的字元編碼。 |
checked |
{{ HTMLElement("command") }}, {{ HTMLElement("input") }} | 指定在加載頁面上的元素是否要被檢查。 |
cite |
{{ HTMLElement("blockquote") }}, {{ HTMLElement("del") }}, {{ HTMLElement("ins") }}, {{ HTMLElement("q") }} | 包含一個 URL,用來指出引用或是改變的來源地址。 |
class |
Global attribute | 經常使用共同屬性和 CSS 一起設計元素。 |
code |
{{ HTMLElement("applet") }} | 指明被加載與執行的 applet 類別文件之 URL。 |
codebase |
{{ HTMLElement("applet") }} | This attribute gives the absolute or relative URL of the directory where applets' .class files referenced by the code attribute are stored. |
color |
{{ HTMLElement("basefont") }}, {{ HTMLElement("font") }}, {{ HTMLElement("hr") }} |
該屬性使用命名顏色或十六進制 #RRGGBB 格式來設置文本顏色。 注意 : 這是一個傳統的屬性。請使用 CSS {{ Cssxref("color") }} 特性。 |
cols |
{{ HTMLElement("textarea") }} | 定義在一個 textarea 中有多少欄位。 |
colspan |
{{ HTMLElement("td") }}, {{ HTMLElement("th") }} | colspan 屬性定義一個單元格之欄位的數量。 |
content |
{{ HTMLElement("meta") }} | 一個有關於 http-equiv 或是根據上下文 name 的值 。 |
contenteditable |
Global attribute | 指定元素的內容是否可以被編輯。 |
contextmenu |
Global attribute | 定義將作為元素上下文選項單的 {{ HTMLElement("menu") }} 元素之 ID。 |
controls |
{{ HTMLElement("audio") }}, {{ HTMLElement("video") }} | 指定瀏覽器是否應該顯示錄放控制給使用者。 |
coords |
{{ HTMLElement("area") }} | 一組值指明熱點區域的座標。 |
|
{{ HTMLElement("object") }} |
指明 URL 的資源。 |
|
讓您可以將自行定義屬性附加在 HTML 元素上。 |
|
datetime |
{{ HTMLElement("del") }}, {{ HTMLElement("ins") }}, {{ HTMLElement("time") }} | 指定元素所相關的日期與時間。 |
default |
{{ HTMLElement("track") }} | 指定 track 應被啟用,除非使用者的偏好表示不同。 |
defer |
{{ HTMLElement("script") }} | 指定該頁面被瀏覽完後腳本應被執行。 |
dir |
Global attribute | 定義文章的方向。被允許的值有 ltr (Left-To-Right) 或 rtl (Right-To-Left)。 |
dirname |
{{ HTMLElement("input") }}, {{ HTMLElement("textarea") }} | |
disabled |
{{ HTMLElement("button") }}, {{ HTMLElement("command") }}, {{ HTMLElement("fieldset") }}, {{ HTMLElement("input") }}, {{ HTMLElement("keygen") }}, {{ HTMLElement("optgroup") }}, {{ HTMLElement("option") }}, {{ HTMLElement("select") }}, {{ HTMLElement("textarea") }} | 指名使用者是否可以與元素互動。 |
download |
{{ HTMLElement("a") }}, {{ HTMLElement("area") }} |
指定該超連結是用於下載的資源。 |
draggable |
Global attribute | 定義元素是否可以拖曳。 |
dropzone |
Global attribute | 指定該元素接受它內容的滑鼠落下物。 |
enctype |
{{ HTMLElement("form") }} | 當方法為 POST 的時候,定義格式日期的內容類型。 |
for |
{{ HTMLElement("label") }}, {{ HTMLElement("output") }} | 描述屬於這一個的元素。 |
form |
{{ HTMLElement("button") }}, {{ HTMLElement("fieldset") }}, {{ HTMLElement("input") }}, {{ HTMLElement("keygen") }}, {{ HTMLElement("label") }}, {{ HTMLElement("meter") }}, {{ HTMLElement("object") }}, {{ HTMLElement("output") }}, {{ HTMLElement("progress") }}, {{ HTMLElement("select") }}, {{ HTMLElement("textarea") }} |
指定元素之所有者的格式。 |
formaction |
{{ HTMLElement("input") }}, {{ HTMLElement("button") }} | 指定元素的作用,多載的動作被定義在 {{ HTMLElement("form") }}。 |
headers |
{{ HTMLElement("td") }}, {{ HTMLElement("th") }} | 對適用於該元素的 <th> 元素之 ID。 |
height |
{{ HTMLElement("canvas") }}, {{ HTMLElement("embed") }}, {{ HTMLElement("iframe") }}, {{ HTMLElement("img") }}, {{ HTMLElement("input") }}, {{ HTMLElement("object") }}, {{ HTMLElement("video") }} | 注意 : 在有些情況中,例如 {{ HTMLElement("div") }},這是傳統的屬性,而 CSS {{ Cssxref("height") }} 特性應當被使用。在其他的情況中,例如 {{ HTMLElement("canvas") }},高度必須用該屬性來指定。 |
accept |
{{ HTMLElement("form") }}, {{ HTMLElement("input") }} | 伺服器接受的類型之列表,通常是文件類型。 |
accept-charset |
{{ HTMLElement("form") }} | 支持字元集的列表。 |
accesskey |
Global attribute | 定義鍵盤快捷鍵來啟動或添加焦點到該元素。 |
action |
{{ HTMLElement("form") }} | 一個程序處理經由該格式提交信息的 URI。 |
align |
{{ HTMLElement("applet") }}, {{ HTMLElement("caption") }}, {{ HTMLElement("col") }}, {{ HTMLElement("colgroup") }}, {{ HTMLElement("hr") }}, {{ HTMLElement("iframe") }}, {{ HTMLElement("img") }}, {{ HTMLElement("table") }}, {{ HTMLElement("tbody") }}, {{ HTMLElement("td") }}, {{ HTMLElement("tfoot") }} , {{ HTMLElement("th") }}, {{ HTMLElement("thead") }}, {{ HTMLElement("tr") }} | 指定元素的水平對齊方式。 |
alt |
{{ HTMLElement("applet") }}, {{ HTMLElement("area") }}, {{ HTMLElement("img") }}, {{ HTMLElement("input") }} |
在圖像無法顯示的情況下,顯示代替文本。 |
async |
{{ HTMLElement("script") }} | 指定該腳本應該被不同步得執行。 |
autocomplete |
{{ HTMLElement("form") }}, {{ HTMLElement("input") }} | 指定是否以該格式控制,可以在默認情況下由瀏覽器自動完成其值。 |
autofocus |
{{ HTMLElement("button") }}, {{ HTMLElement("input") }}, {{ HTMLElement("keygen") }}, {{ HTMLElement("select") }}, {{ HTMLElement("textarea") }} | 該元素應該在頁面加載後自動焦距。 |
autoplay |
{{ HTMLElement("audio") }}, {{ HTMLElement("video") }} | 音頻或視頻應該越早撥放越好。 |
autosave |
{{ HTMLElement("input") }} | 上一個值應該持續存在到跨頁面加載的可選值之下拉列表中。 |
bgcolor |
{{ HTMLElement("body") }}, {{ HTMLElement("col") }}, {{ HTMLElement("colgroup") }}, {{ HTMLElement("marquee") }}, {{ HTMLElement("table") }}, {{ HTMLElement("tbody") }}, {{ HTMLElement("tfoot") }}, {{ HTMLElement("td") }}, {{ HTMLElement("th") }}, {{ HTMLElement("tr") }} |
元素的背景顏色。 注意 : 這是一個傳統的屬性。請使用 CSS {{ Cssxref("background-color") }} 特性。 |
在 HTML 中,大部分的屬性有兩種面向 : 內容屬性與 IDL 屬性。
內容屬性是您可以從內容中設定的屬性 (HTML 程式碼) 而且您可以藉由 {{domxref("element.setAttribute()")}} 或是 {{domxref("element.getAttribute()")}} 來設定它或得到它。內容屬性永遠都是字串,即便我們所期望的值是一個整數。舉例來說,假設今天要用內容屬性去設定一個 {{HTMLElement("input")}} 元素的最大長度是42,您必須在該元素上呼叫 setAttribute("maxlength", "42")。
IDL 屬性也被稱為 JavaScript 特性。您可以使用 JavaScript 特性的 element.foo 以閱讀或是設定這些屬性。當您要得到 IDL 屬性時,它總是要使用 (但可能改變) 基本的內容屬性以返回值,而當您要設定 IDL 屬性時,它需要儲存資料在內容屬性中。換句話說,IDL 屬性在本質上反映了內容屬性。
在大部分的時間中,當 IDL 屬性真正被使用時,將會返回它們的值。舉例而言,{{HTMLElement("input")}} 元素的預設型態是 "text",所以如果您設定 input.type="foobar",<input> 元素一樣是 text 的型態 (在外觀和行為上而言),但是 "type" 內容屬性的值將會變成 "foobar"。然而,IDL 屬性的型態將會回傳 "text" 字串。
IDL 屬性並非永遠的字串 ; 舉例來說,input.maxlength 便是一個數字(型態為 signed long)。當使用 IDL 屬性,您會閱讀或是設定所需的型態,而當您設定 input.maxlength 時,它總是回傳一個數字,因為它正需要一個數字。如果您傳入別的型態,它會依照標準 JavaScript 型態轉換規則,將傳入值轉成一個數字。
IDL 屬性可以 反應其他型態,例如 unsigned long、URLs、booleans,等等。不幸的是,並沒有明確的規則來規範,而且與 IDL 屬性行為相對應的內容屬性連結中,也沒有取決於該屬性的方式。在大部分的時間裡,它會遵守 規範中所制定的規則,但有時候它並不會。HTML 規範嘗試讓它變得容易使用,但由於各種原因 (大多是因為歷史),有些屬性表現得很奇怪 (舉例來說,select.size),而您應該詳細閱讀規範以了解各個屬性的行為。