TL:DR - Web Accessibility means that people of all abilities can access your website
"Section 508 requires that all website content be accessible to people with disabilities. This applies to Web applications, Web pages and all attached files on the intranet, as well as, internet."
-HHS.gov
3 levels:
<img src="images/rainbow-white-house.jpg" alt="White House with rainbow" />
Credit: New York Times
<img src="images/rainbow-white-house.jpg" alt="White House lit with rainbow lights to celebrate legal gay marriage" />
Credit: New York Times
<header>
, <nav>
, <section>
, <article>
, <footer>
tags
<h1>About Us</h1>
<p>Here is some text</p>
<h3>Our Mission</h3>
<h1>About Us</h1>
<p>Here is some text</p>
<h2>Our Mission</h2>
<td>
and <th>
appropriately
<tr>
<td>Name</td>
<td>Age</td>
</tr>
<tr>
<td>Lindsey</td>
<td>27</td>
</tr>
<tr>
<th>Name</th>
<th>Age</th>
</tr>
<tr>
<td>Lindsey</td>
<td>27</td>
</tr>
<tr>
<th scope="col">Name</th>
<th scope="col">Age</th>
</tr>
<tr>
<th scope="row">Lindsey</td>
<td>27</td>
</tr>
<tr>
<th scope="row">Karen</td>
<td>25</td>
</tr>
<label>
and associate it with the proper input, even if you hide it for visually able users
<input type="text" placeholder="Search" id="search">
<input type="submit" value="Search">
<label for="search">Search: </label>
<input type="text" placeholder="Search" id="search">
<input type="submit" value="Search">
<p><a href="/some-link">Click here</a> to find out more
<a href="#" onmouseover="dropdownmenu()">Products</a>
<p>Check out our <a href="/some-link">resources about coding</a>
to find out more.</p>.</p>
<!--
<body>
<a href="#maincontent">Skip to main content</a>
...
<main id="maincontent">
<h1>Heading</h1>
<p>This is the first paragraph</p>
-->
<body>
<a href="#maincontent">Skip to main content</a>
...
<main id="maincontent">
<h1>Heading</h1>
<p>This is the first paragraph</p>
Image credited to Beth Soderberg
Image credited to Beth Soderberg
Image credited to Beth Soderberg
display:none;
.visually-hidden {
position:absolute;
left:-10000px;
top:auto;
width:1px;
height:1px;
overflow:hidden;
}
role
attribute:focus