Javascript 哪一个是访问性更好的解决方案?aria隐藏,从DOM或其他对象中删除元素

Javascript 哪一个是访问性更好的解决方案?aria隐藏,从DOM或其他对象中删除元素,javascript,accessibility,wai-aria,Javascript,Accessibility,Wai Aria,就我个人而言,我认为删除元素对网站的维护可能更好,但这样做是否节省了可访问性 样本将是 <input type="radio" value="single" name="userGroup" id="single" required /> <label for="single">Single</label> <input type="radio" value="families" class="form-checkb

就我个人而言,我认为删除元素对网站的维护可能更好,但这样做是否节省了可访问性

样本将是

      <input type="radio" value="single" name="userGroup" id="single" required />
      <label for="single">Single</label>

      <input type="radio" value="families" class="form-checkbox" name="userGroup" id="families" required />
      <label for="families" >Families</label>

单身
家庭
表单字段的其余部分将根据用户组的不同而有所不同

当用户在“单一”和“家庭”之间切换时,“家庭”组将在“单一表单”字段的顶部有额外的字段,如“账单付款”部分(合并或不合并)和“您希望如何共享您的数据计划”(是否限用)


作为表单,“bill payment”之类的元素是隐藏的还是从DOM中删除的

如果没有更多的上下文和/或URL,很难回答这个问题

如果允许用户返回并更改选择,然后更改后续字段,则考虑用户何时出错。如果完全从DOM中删除字段,那么用户已经键入的任何内容都将丢失。如果这是一个错误,那么用户切换回来,看到丢失的信息,可能会感到恼火

严格地说,从可访问性的角度来看,我只会隐藏字段,这样用户就可以在单身和家庭之间切换,而不会丢失他/她可能难以输入的任何信息


如果您使用CSS将容器设置为
display:none
,您也可以跳过使用
aria hidden
,因为这样也会对屏幕阅读器隐藏它。这意味着您不必在切换时同时管理CSS和HTML属性,您只需管理其中一个即可。

如果元素不需要且不存在,为什么会出现任何问题?听起来你想得太多了。不知道什么样的示例应该向我们展示它们的优点,我将更新这个问题的优点,特别是关于错误的部分。真不敢相信,还没有一个词专门用来形容人们在网络表单重置时所感受到的愤怒。因为喉音呼喊没有字母。随地吐痰。