Files
30-seconds-of-code/snippets/offscreen.md
Isabelle Viktoria Maciohsek 2487083cf1 Bake dates into snippets
2021-06-13 19:41:39 +03:00

1023 B

title, tags, firstSeen, lastUpdated
title tags firstSeen lastUpdated
Offscreen layout,visual,intermediate 2018-03-30T18:50:31+03:00 2020-12-30T15:37:37+02:00

Completely hides an element visually and positionally in the DOM while still allowing it to be accessible.

  • Remove all borders and padding and hide the element's overflow.
  • Use clip to indicate that no part of the element should be shown.
  • Make the height and width of the element 1px and negate them using margin: -1px.
  • Use position: absolute so that the element does not take up space in the DOM.
  • Note: This provides an accessible and layout-friendly alternative to display: none (not readable by screen readers) and visibility: hidden (takes up physical space in the DOM).
<a class="button" href="https://google.com">
  Learn More <span class="offscreen"> about pants</span>
</a>
.offscreen {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}