2
你有什么吃晚饭?多项选择题的语义标记
- 牛肉
- 鸡
- 鱼
- 蔬菜
假设这上面是一个问题,在相当长的问卷调查和子弹是互相排斥的单选按钮。
什么是最好的方式来标记这个HTML语义?
难道我用<label>What did you have for dinner?</label>
还是我使用一些其他HTML构建?
你有什么吃晚饭?多项选择题的语义标记
假设这上面是一个问题,在相当长的问卷调查和子弹是互相排斥的单选按钮。
什么是最好的方式来标记这个HTML语义?
难道我用<label>What did you have for dinner?</label>
还是我使用一些其他HTML构建?
一个好办法做到这一点是将label
小号包裹每个无线选项,然后如果你想获得完整的辅助支持,使用aria-labelledby
attribute为组:
<span id="label-dinner">What did you have for dinner?</span>
<div class="controls" aria-labelledby="label-dinner">
<label><input type="radio" name="dinner" />Beef</label>
<label><input type="radio" name="dinner" />Chicken</label>
<label><input type="radio" name="dinner" />Fish</label>
<label><input type="radio" name="dinner" />Vegetables</label>
</div>
上面例子中的正确的标记将会是一个'legend'而不是'span',全部用'fieldset'包含。然后'咏叹调标签'(虽然不正确)将不是必需的。请参阅http://stackoverflow.com/a/15560982/504745 – francois