Skip to content

Popover and dialog elements with lots of content can be inaccessible #11176

Open
@teddybradford

Description

@teddybradford

What is the issue with the HTML Standard?

Since the default CSS for dialog and [popover] selectors use a fixed or absolute position and their heights are set to fit-content, if the popover's content length exceeds the viewport size, there seems to be no way to interact with parts of the content without using custom CSS to declare a scroll overflow. This can be problematic if someone has author CSS turned off in their browser for one reason or another—and even more so if the content is something like legal terms and conditions.

Perhaps the UA styles should include something like max-height: 100svb; by default so that the contents are accessible even if they overflow past the viewport?

Desktop screenshot
Mobile screenshot
Can't scroll this. 🙁
Sample code
<button type="button" popovertarget="lorem">
  Open
</button>

<dialog id="lorem" popover>
  <p>
    Et sint quo debitis minus doloremque sit. Quis praesentium id eveniet. Sed velit eos omnis quis quasi. Eaque
    cumque rem quis officia possimus aut autem.
  </p>

  <p>
    Quod aut dolores ex sit alias dolorem. Iure molestiae quasi aut soluta deserunt dignissimos veniam quidem.
    Quidem aut iste odio est et. Voluptatibus non et distinctio accusantium tempore fugit. Recusandae eaque qui
    distinctio iste quis. Quod deserunt temporibus minus praesentium nobis.
  </p>

  <p>
    A saepe qui adipisci perspiciatis dignissimos dolorem. Et dolorum autem similique ut est sed sed consequatur.
    Doloremque dolorum accusamus ad praesentium rem. Et ut sunt quidem.
  </p>

  <p>
    Culpa quis assumenda temporibus rem quis. Cupiditate molestiae suscipit amet excepturi pariatur et
    consequuntur iusto. Blanditiis accusamus quos voluptas tempora inventore est. Quidem ipsa laudantium ut
    consequatur quasi quia et.
  </p>

  <p>Placeat recusandae deleniti et non. Odit est molestiae soluta nisi sed corporis. Tempora amet rem sed.</p>

  <p>
    Et sint quo debitis minus doloremque sit. Quis praesentium id eveniet. Sed velit eos omnis quis quasi. Eaque
    cumque rem quis officia possimus aut autem.
  </p>

  <p>
    Quod aut dolores ex sit alias dolorem. Iure molestiae quasi aut soluta deserunt dignissimos veniam quidem.
    Quidem aut iste odio est et. Voluptatibus non et distinctio accusantium tempore fugit. Recusandae eaque qui
    distinctio iste quis. Quod deserunt temporibus minus praesentium nobis.
  </p>

  <p>
    A saepe qui adipisci perspiciatis dignissimos dolorem. Et dolorum autem similique ut est sed sed consequatur.
    Doloremque dolorum accusamus ad praesentium rem. Et ut sunt quidem.
  </p>

  <p>
    Culpa quis assumenda temporibus rem quis. Cupiditate molestiae suscipit amet excepturi pariatur et
    consequuntur iusto. Blanditiis accusamus quos voluptas tempora inventore est. Quidem ipsa laudantium ut
    consequatur quasi quia et.
  </p>

  <p>Placeat recusandae deleniti et non. Odit est molestiae soluta nisi sed corporis. Tempora amet rem sed.</p>
</dialog>

Metadata

Metadata

Assignees

No one assigned

    Labels

    a11y-trackerGroup bringing to attention of a11y, or tracked by the a11y Group but not needing response.accessibilityAffects accessibilitytopic: rendering

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions