我收到此错误
错误:元素输入上属性类型的错误值无线电。
尝试在https://validator.w3.org/nu/#file
上验证以下HTML时<fieldset>
<p class="city" id="citypref">Generally, I would prefer to live in...</p>
<br>
<label for="la" id="laLabel">
<br>
<input type="radio" name="city" id="la" value="la" aria-required="false" aria-labelledby="laLabel" role="radiogroup" >Los Angeles, California</label>
<br>
<label for="boston" id="bostonLabel">
<input type="radio" name="city" id="boston" value="boston" aria-required="false" aria-labelledby="bostonLabel" role="radiogroup" >Boston, Massachusetts</label>
<br>
<label for="both" id="bothLabel">
<input type="radio" name="city" id="both" value="both" aria-required="false" aria-labelledby="bothLabel" role="radiogroup" >Both</label>
<br>
<label for="neither" id="neitherLabel">
<input type="radio" name="city" id="neither" value="neither" aria-required="false" aria-labelledby="neitherLabel" role="radiogroup" >Neither</label>
<br>
</fieldset>
任何提示?
答案 0 :(得分:5)
似乎https://validator.w3.org/尚未配备 以下代码
它实现了在https://www.w3.org/TR/html-aria/ prohibits role=radiogroup
on input type="radio"
中定义的HTML中使用ARIA的一致性要求。它定义了所有元素的有效角色值。没有input
元素允许role="radio"
。 role="menuitemradio"
仅允许input type="radio"
。
另一个答案错误地建议使用ul role="radiogroup"
和li role="radio"
。但ARIA采用HTML prohibits role="radiogroup"
for ul
和prohibits role="radio"
for li
。
请注意,ARIA 1.1中引入了一些验证程序无法识别的角色和属性属性。这项工作正在进行中。
如果您对w3c验证器有疑问,建议filing an issue
答案 1 :(得分:0)
似乎https://validator.w3.org/尚未配备以下代码:
aria-required="false"
aria-labelledby="neitherLabel"
role="radiogroup"
一旦删除它们,您的代码就会毫无问题地通过。
W3网站提供了有关如何在此页面上使用前3个代码的示例:https://www.w3.org/TR/WCAG20-TECHS/ARIA2.html。 这是他们提供的一个例子:
<form action="#" method="post" id="alerts1">
<label for="acctnum" data-required="true">Account Number</label>
<input size="12" type="text" id="acctnum"
aria-required="true" name="acctnum" />
<p id="radio_label" data-required="true">Please send an alert when balance exceeds $3,000.</p>
<ul id="rg" role="radiogroup" aria-required="true" aria-labelledby="radio_label">
<li id="rb1" role="radio">Yes</li>
<li id="rb2" role="radio">No</li>
</ul>
</form>
当我复制他们自己的example
并将其粘贴在验证器上时,它无法通过,并向我提供了您收到的相同错误消息。
因此,我建议直接与他们联系,要求他们将之前的3个代码添加到验证者数据库作为有效用途。
<强>更新强>
查看史蒂夫的回答澄清。