The alt attribute provides a textual alternative to an image.

It is used whenever the actual image cannot be rendered.

Common reasons for that include:

Empty alt attributes are not allowed, since purely decorative images should be specified using CSS, not using the img tag.

Noncompliant Code Example

<img src="foo.png" />                                           <!-- Noncompliant -->
<img src="foo.png" alt="" />                                    <!-- Noncompliant -->
<input type="image" src="bar.png" />                            <!-- Noncompliant -->

Compliant Solution

<img src="foo.png" alt="Some textual description of foo.png" />
<input type="image" src="bar.png" alt="Textual description of bar.png" />