代码之家  ›  专栏  ›  技术社区  ›  vighnesh153

我们能为每对“<dt>”、“<dd>”使用不同的“<dl>”元素吗?

  •  0
  • vighnesh153  · 技术社区  · 4 年前

    我们可以用不同的吗 <dl> 每个 <dt> , <dd> 成对?如果我们这样做,在无障碍性方面会有什么问题吗?用例用于简化某些组件API。例如:

    <!-- Can we do this -->
    <div class="container">
      <dl>
        <dt>First Name</dt>
        <dd>Jeff</dd>
      </dl>
      <dl>
        <dt>Last Name</dt>
        <dd>Bezos</dd>
      </dl>
    </div>
    
    <!-- instead of this? -->
    <div class="container">
      <dl>
        <dt>First Name</dt>
        <dd>Jeff</dd>
    
        <dt>Last Name</dt>
        <dd>Bezos</dd>
      </dl>
    </div>
    
    0 回复  |  直到 4 年前
        1
  •  0
  •   slugolicious    4 年前

    在这种情况下,这并不重要,因为出于可访问性的目的,定义列表通常很糟糕。请参阅我的(社论)评论, How to properly use aria selectors for definition lists in puppeteer

    定义列表没有 "list" role 默认情况下,不同的屏幕阅读器对它们的解释不同。正因为如此,你是否有分开 <dl> s与否不会产生巨大影响。

    “真实”列表, <ul> <ol> , 有影响如果你有一组相关的东西,并且包含在一个列表中,那么它应该只有一个 <ul> 而不是一系列 <ul> s.屏幕阅读器传达关于列表的元数据信息,例如列表中元素的数量。如果你有视力,你可以用眼睛“免费”获得这些信息。你通常可以知道列表中有多少项目(如果不是太长的话),而屏幕阅读器用户没有“查看”选项,所以屏幕阅读器可以告诉他们这是一个有5个项目的列表,但前提是只有一个项目 <ul> 带有5 <li> 元素。