--- 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") }} 一組值指明熱點區域的座標。

data

{{ HTMLElement("object") }}

指明 URL 的資源。

data-*

Global attribute

讓您可以將自行定義屬性附加在 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") }} 特性。

內容與IDL屬性

在 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),而您應該詳細閱讀規範以了解各個屬性的行為。

另請參見