roleform
一個地標區域,包含一組專案和物件,作為一個整體,它們組合在一起建立一個表單。
使用語義正確的 HTML 元素 <form>
意味著預設的 ARIA 語義,意味著不需要 role=form
,因為你不應該將對比角色應用於已經是語義的元素,因為新增角色會覆蓋元素的本地語義。
設定與預設隱式 ARIA 語義匹配的 ARIA 角色和/或 aria- *屬性是不必要的,因為這些屬性已由瀏覽器設定,所以不建議這樣做。
<form action="">
<fieldset>
<legend>Login form</legend>
<div>
<label for="username">Your username</label>
<input type="text" id="username" aria-describedby="username-tip" required />
<div role="tooltip" id="username-tip">Your username is your email address</div>
</div>
<div>
<label for="password">Your password</label>
<input type="text" id="password" aria-describedby="password-tip" required />
<div role="tooltip" id="password-tip">Was emailed to you when you signed up</div>
</div>
</fieldset>
</form>
你會在非語義元素上使用 role=form
(不推薦,無效)
<div role=form>
<input type="email" placeholder="Your email address">
<button>Sign up</button>
</div>