aria-label是否需要type = button?

时间:2019-01-30 14:22:26

标签: html wai-aria htmlbutton

我了解到按钮类型的隐式值为submit。为了制作UI按钮,我还读到我们因此需要指定type=button属性。

例如:

<button type="button">Click me</button>

但是,我已将此示例视为可访问的按钮:

<button aria-label="undo">&#xE000;</button>

我注意到它没有type=button属性。

如果在按钮上定义了aria-label,是否暗含意味着该按钮属于type=button

如果不是,那么上面的示例(撤消按钮)是否正确?

1 个答案:

答案 0 :(得分:2)

typearia-label无关。

如果未在type上指定<button>,则默认类型为submit。如果您的按钮包含在<form>中,则该按钮的onclick()将运行并提交表单。

如果您的类型是button,则将不提交表单。仅按钮的onclick()会运行。

请参阅<button>规范。

第二个示例具有aria-label的原因是因为按钮上没有可见的文本。使用图标字体(如图像),并且为了使屏幕阅读器知道要为按钮通告的内容,请指定aria-label