HTML: 如何以正确的方式将带有单选框的问题表示为答案?
HTML: how to indicate questions with radioboxes as answers in proper way?
我有一个 HTML 形式的问题和单选框作为答案,如下所示:
<span>What is your favorite fruit?</span>
<input type="radio" name="favFruit" id="banana"><label for="banana">Banana</label>
<input type="radio" name="favFruit" id="orange"><label for="orange">Orange</label>
但我意识到,该问题与答案无关,这可能不利于 SEO、可访问性,并且可能不利于应用程序的未来维护。所以我添加了 aria-describedby
属性:
<span id="favFruitQuestion">What is your favorite fruit?</span>
<input type="radio" name="favFruit" id="banana" aria-describedby="favFruitQuestion">
<label for="banana">Banana</label>
<input type="radio" name="favFruit" id="orange" aria-describedby="favFruitQuestion">
<label for="orange">Orange</label>
但是在 Mozilla Developer Network I found article How to structure an HTML form,当建议将答案包装在 fieldset
标签中并将问题放在 legend
标签中时:
<fieldset>
<legend>What is your favourite fruit?</legend>
<input type="radio" name="favFruit" id="banana"><label for="banana">Banana</label>
<input type="radio" name="favFruit" id="orange"><label for="orange">Orange</label>
</fieldset>
但它不能 100% 可信,因为,因为上面写着:
This article is in need of a technical review.
用单选框作为答案来表示问题真的是最好的方法吗?如果不是,最好的方法是什么?预先感谢您的每一个回答。
是的。 <legend>
/ <fieldset>
是正确的工具。
不过要避免过长的图例。一些屏幕阅读器会在每个标签之前读出整个图例。
我有一个 HTML 形式的问题和单选框作为答案,如下所示:
<span>What is your favorite fruit?</span>
<input type="radio" name="favFruit" id="banana"><label for="banana">Banana</label>
<input type="radio" name="favFruit" id="orange"><label for="orange">Orange</label>
但我意识到,该问题与答案无关,这可能不利于 SEO、可访问性,并且可能不利于应用程序的未来维护。所以我添加了 aria-describedby
属性:
<span id="favFruitQuestion">What is your favorite fruit?</span>
<input type="radio" name="favFruit" id="banana" aria-describedby="favFruitQuestion">
<label for="banana">Banana</label>
<input type="radio" name="favFruit" id="orange" aria-describedby="favFruitQuestion">
<label for="orange">Orange</label>
但是在 Mozilla Developer Network I found article How to structure an HTML form,当建议将答案包装在 fieldset
标签中并将问题放在 legend
标签中时:
<fieldset>
<legend>What is your favourite fruit?</legend>
<input type="radio" name="favFruit" id="banana"><label for="banana">Banana</label>
<input type="radio" name="favFruit" id="orange"><label for="orange">Orange</label>
</fieldset>
但它不能 100% 可信,因为,因为上面写着:
This article is in need of a technical review.
用单选框作为答案来表示问题真的是最好的方法吗?如果不是,最好的方法是什么?预先感谢您的每一个回答。
是的。 <legend>
/ <fieldset>
是正确的工具。
不过要避免过长的图例。一些屏幕阅读器会在每个标签之前读出整个图例。