Accessibility・Interaction and input

Links that don't say "here"

A "click here for details" link, heard through a screen reader, sounds like "here, here, here…" We fix links and buttons so the destination is clear from the wording alone.

“Click here for details,” “click here” — a common way to write links, but a big problem for screen reader software. Many users skim just the links on a page as a list. What they hear then is “here, here, here…” — with no idea which one goes where.

The fix is just “make the destination the text”

<!-- ❌ you can't tell without reading around it -->
<p>You can see Shima's work <a href="/works">here</a>.</p>

<!-- ○ clear from the link alone -->
<p>You can see <a href="/works">Shima's list of works</a> here.</p>

All we did was shift the linked range from “here” to “Shima’s list of works.” Now the destination comes across even when skimming. As a bonus, everyone finds it easier regardless of eyesight — skimming the bold links to find your destination is something we all do.

Let’s experience skimming

How does this page sound to a screen reader user? Let’s recreate it by lining up just the links as a list.

The first list is “here, here, here” — it tells you nothing about where you can go. Press the button to fix them, and the list alone tells you every destination.

Make button wording a “verb”

Buttons work the same way. Make what happens when you press it clear from the button text alone.

WordingVerdict
”OK” / “Yes”△ On its own, you can’t tell what you’re agreeing to
”Submit”○ You can tell what happens
”Send message”◎ You can tell what and how

Especially in a scene like “Delete this?” → “OK / Cancel,” changing it to “Delete / Cancel” also reduces mistaken presses.

Buttons with no text get an aria-label

A close button that’s just ”×,” a search button that’s only a magnifying-glass icon — a button with no text just sounds like “button” in a screen reader. In that case, give it a name for speech with aria-label.

<button aria-label="Close menu">×</button>

It still looks like ”×,” but a screen reader hears “Close menu, button.” An aria-label is a name plate just for speech that doesn’t show on the screen.

Summary of this lesson

  1. Make links so the destination is clear from the text alone (stop using “here”)
  2. For buttons, write what happens when you press it as a verb
  3. Give text-less icon buttons a name for speech with aria-label

That wraps up the accessibility course. alt, contrast, focus, labels, wording — every one is a small improvement you can use in today’s code. “Usable by anyone” is built by stacking these up.

FAQ

Do I have to fix every 'here' on the site?
You don't have to do them all at once. It's effective to start with navigation and the paths people press most. From new pages onward, make 'the link text = the destination' a firm rule.
How are aria-label and alt different?
alt is a 'stand-in for an image' just for the img tag, while aria-label is a 'name for screen readers' you can add to buttons, links, and the like. Remember it as aria-label for icon-only buttons and alt for images, and you'll be fine.
Is it OK to remove the underline from a link?
For links in body text, keeping the underline is the safe choice. If you show a link by color alone, people who have trouble telling colors apart can't distinguish it from the body text. In places where it's obviously a link, like navigation, removing it is no problem.