Accessibility options for different HTML tags and Web-based technologies. See options in the alphabetical list below.
In general screen readers do not recognize abbreviations and acronyms and generally read them as if they were typical English words. For instance the phrase "ITS at PSU" would not be read by screen readers as the intended "I.T.S. at P.S.U.", but as "It's at Sue". Here are some workarounds to help deal with this issue.
Using periods between letters (e.g. P.S.U. versus PSU) in an acronym may help screen readers parse the acronym.
When writing ALT tags with acronyms, add spaces between characters (e.g. <alt="P S U" >).
For unusual abbreviations and acronyms, you can supply a key for what they mean.
You can include an ACRONYM tag for abbreviations, which also causes a tooltip to appear in modern browsers.
Note: You only need to use the acronym tag on the first instance of a repeated abbreviation or acronym.
Rollover text after "Test" to see a tooltip.
<acronym title="Pennsylvania">PA</acronymn>
Test: PA
<acronym title="H T M L">HTML</acronym>
Test: HTML
<acronym title="sodium chloride">NaCl</acronym>
Test: NaCl
Because the ANGEL Course Management System is a Web tool you may not have all the ability to manipulate accessibility features that you would in a stand alone Web site. However, there are some steps you can take to make your ANGEL content more accessible.
Note: This version is current as of ANGEL 7.3. See the ANGEL Help Page "Ensure ANGEL Course Content is Accessible" for the most up-to-date information.
Users who use a screen reader or those with severe low vision may want to switch their display option to Accessible View, PDA or 508 mode. Any of these put ANGEL into a frames-free text-only mode and enlarges the text. See the ANGEL Help Page "Ensure ANGEL Course Content is Accessible" for more details.
Color blind or users who need large font sizes may wish to view all their pages in an accessible theme. To change a theme, Login, go to Settings in the My Profile menu on the left then click on Personal Theme Selector. Some themes which have been developed for accessibility purposes include:
- Large Text - Default text size is set higher.
- Black and White - Uses black text with a white background for highest contrast.
- High Contrast - Black - Reverses colors so that background is dark and the text is light. Needed for some low vision users.
NOTE: Users can check "Always use this theme" to override custom themes from a course.
If students find the text too small in ANGEL even with zooming, you can suggest switching from older browsers such as Internet Explorer 6 to other browsers such as Firefox or Internet Explorer 7. These browsers tend to allow more text to be zoomed.
If you use complex image maps, multimedia or scripts, you may want to develop them on an external Web site and link to them from within ANGEL.
The ANGEL HTML editor can be used to add formatting to HTML pages. Some tools that will assist users with different accessibility issues are:
Page titles should be formatted with the Heading 1 <H1> option in the Select Format menu. This helps users with screen readers quickly identify the page title.
Main section headings should be formatted with the Heading 2 <H2> option in the Select Format menu. This helps users with screen readers quickly scan and name major sections of the page. Use the Heading 3 <H3> option for subsection headings.
When inserting images, remember to fill in the Alternate Text field in the upload screen. This is the text that will be read aloud by a screen reader. See the HTML Editor: Insert an Image help topic for more details.
Make sure color schemes have enough contrasts between light and dark. See the Web site Color Page for more details on color schemes.
If you copy formatted text from Microsoft Word, use the Paste from Word tool to clean the Word HTML code, then reformat the page.
All files uploaded into ANGEL should be made accessible. Accessibility accommodations include:
Images and charts embedded within Word, PowerPoint, or other document files should include a caption for each image which adequately describes the content to a user with a screen reader. Excel charts should be legible in gray scale as well as color.
Audio files (including podcasts) should include text transcripts for hearing impaired students.
Video files should either be captioned or text transcripts should be provided.
Uploaded Word files, PowerPoint files (especially with images) or PDF files should have accessibility incorporated into them.
When writing multiple choice questions in ANGEL, select the format of "Multiple Choice" (choices listed with radio buttons option) instead of the "Matching Option" (drop-down menu). Drop down menus present more accessibility issues for users with mobility impairment, screen readers or certain cognitive disabilities.

Extended Text Description below

Both examples ask how Spanish /ñ/ differs from English /n/ in articulation and provide a list of anatomical terms. The answer is that the tongue body makes contact with the alveolar ridge for English /n/, but with the palate for Spanish /ñ/.
Add text description for all uploaded images. For instance, if you upload an image for a quiz, include a brief description within the text for the quiz question. For example
Q: Identify the saturated fat below. The fat chain has 18 carbon atoms in it.

NOTE: This description is also useful for students who cannot see an image
attachment or image file online for technical reasons.
Students with learning or physical disabilities may not be able to complete timed quizzes within the given time frame. If these students are registered with the Penn State Office of Disability Services, they are permitted to request accommodation for timed quizzes and assignments.
Animations needed to present content should also include a non-animated, text- based alternative accessible to screen readers. Text with still images could also be beneficial for users who have cognitive difficulties processing animations.
SECTION 508 - A text equivalent for every non-text element shall be provided.
Avoid automatic or looped animations, blinking and scrolling. These are distracting and, if incorrectly implemented, could trigger an epileptic seizure or headaches for some users.
SECTION 508 - Pages shall be designed to avoid causing the screen to flicker with a frequency greater than 2 Hertz (cycles per second) and lower than 55 Hertz.
See the N.C.A.M. Flicker Rate demo to see what different flicker rates look like. Standard Blinking text is somewhere between 1-2 Hz, so is right on the edge of the bad flicker zone.
Animations with sound should have synchronized captions or a text transcript.
SECTION 508
(b) Equivalent alternatives for any multimedia presentation shall be synchronized with the presentation.
(k) A text-only page, with equivalent information or functionality, shall be provided to make a web site comply with the provisions of these standards, when compliance cannot be accomplished in any other way. The content of the text-only page shall be updated whenever the primary page changes.
NOTE: Transcripts are also beneficial for users who may not be able to access audio on their computers. This is a very frequent situation.
If you use audio files, a text transcript should be provided. See Section 508 regulations below for details.
It may be better to use an A tag than an EMBED tag to link to a file. Not all browsers can detect an implement an EMBED tag.
If video files are used, a synchronized text transcript or captions should be provided unless it is not technically feasible. In that case, a text transcript with description of video events can be substituted.
(a) A text equivalent for every non-text element shall be provided.
(b) Equivalent alternatives for any multimedia presentation shall be synchronized with the presentation.
(k) A text-only page, with equivalent information or functionality, shall be provided to make a web site comply with the provisions of these standards, when compliance cannot be accomplished in any other way. The content of the text-only page shall be updated whenever the primary page changes.
NOTE: Transcripts are also beneficial for users who may not be able to access audio on their computers. This is a very frequent situation.
The following interview with Director of Education Technology Services, Cole Camplese is captioned. You can access captions by clicking the arrow button on the lower right of the screen
Another Good Example - FMC
iMovie Tutorial
This is accessible because text is reproduced under each video clip.
Popular media editors such as Quicktime Pro, Flash Video (including YouTube), Real Player and Windows
Media include captioning options. In many cases captions are stored in an external text file which can be easily edited.
Note: It is recommended that you do a Google search to determine the latest options.
If you have a script for an audio or video production, this can be the basis for a text transcript. Otherwise you may need to manually transcribe the text.
Avoid automatically playing an audio or video file on a Web page. It can be potentially distracting for different users and could interfere with users who rely on speech recognition software to navigate the Web.
Visually impaired users may need additional information about images in a video.
Although JavaScript can be used to create accessible content, the code must be constructed with care. See the Scripts page for more information
If you wish to include an automatic date generator without JavaScript, the following options are available. All these options add special tags as HTML comments which allows the date to be updated by the Web editor, content management system or by the server.
Dreamweaver allows you to insert a date in a format which updates itself everytime you save the file in Dreamweaver.
This file was last saved on - August 8, 2005 15:30
<!-- #BeginDate format:Am1m -- >February 25, 2004 16:40 <!-- #EndDate
-- >
This is similar to Dreamweaver, except that the code inserted is called a
Front Page Webbot.
Note: It may be possible to implement this code in Microsoft Web Expression. Check documentation or tutorials for details.
This file was last saved on - 02/25/2004 04:23:45 PM -0500
<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%m/%d/%Y
%I:%M:%S %p %Z" startspan -- >
02/25/2004 04:23:45 PM -0500
< !--webbot
bot="Timestamp" endspan i-checksum="38424" -- > </p >
You can include a snippet of code which instructs the server to change the date everytime you upload the file. To do that:
Write <!--#echo var="LAST_MODIFIED"-- > wherever you want a date to appear.
Save your file with the .shtml extension to indicate that a server
needs to parse a server side include.
NOTE: Some servers support this extension even if the file type
is .html. Test your page or check with your administrator for details.
See also the Penn
State I.T.S. Knowledge Base for setting up SSI support within
.html files in your own directory.
The Blogs at Penn State system includes some accessibility features, but instructors can take the following precautions.
Blogs with just text are normally accessible. Issues that a student or user may encounter may be reported to blogs@psu.edu.
If you upload an image into the blog, make sure you give it a descriptive Name in the blog image upload window. This will become the ALT tag used by screenreaders and the text that is seen when an image fails to load.
Other files that are uploaded to the Blogs such as PDFs, podcast files or Powerpoints should be made as accessible as possible if they are used in a course.
Depending on their situation, some users may not be able to fully interact with the system to create and write blog entries. If your course requires posting entries to a blog and a student reports a problem, consider alternate outlets such as the student forwarding an e-mail message/Word file or allowing a tech-saavy student to use another Web technology.
Accessibility problems that a student may encounter writing blog entries can be reported to blogs@psu.edu.
Although the output of the Blogs at Penn State is generally accessible, there are always improvements which can be made. If you are comfortable with using the HTML source view and CSS consider these options.
See support documentation at the Blogs at Penn State for information on how to access stylesheets or templates.
Italics in print is been used for a number of reasons including listing book and movie titles, foreign words, mathematical variable names and emphasis, but since italic text is often not as clear on the Web, many editors use bold face or a combination of bold and italics where italics would have been used in print. See examples below.
The book Le Petit Prince is considered to be poétique et philosophique in French literary culture (See French Wikipedia: Le Petit Prince).
The book Le Petit Prince is considered to be poétique et philosophique in French literary culture (See French Wikipedia: Le Petit Prince).
The book Le Petit Prince is considered to be poétique et philosophique in French literary culture (See French Wikipedia: Le Petit Prince).
Many accessibility experts recommend using STRONG instead of B for bold face text and EM instead of I for italic text. The reasons for this recommendation are
Screen readers are more likely to recognize STRONG, EM and pronounce them in a different voice or volume.
STRONG, EM are semantic tags meaning that they indicate that the author wishes to provide emphasis which is rendered as bold/italic on a visual browser or in different speaking styles on a screen reader.
It should be noted though that many authors specify bold or italics purely for visual reasons. In these cases, B or I may be better because having a screen reader switch voices without adding true emphasis may be distracting.
XHTML NOTE Both the B and I tags are included in the XHTML standard, and it is not currently a part of Section 508 policy that all B and I tags be replaced with STRONG and EM tags.
These items should definitely be tagged as STRONG and EM.
When bold face or italics is primarily visual and tied to a specific presentational use, it is often better to include a specification for bold face or italics. For instance if you want a CAPTION tag within a TABLE to always be bold or bold and italics, you can use a CSS declaration such as
caption {font-weight:bold}
caption {font-style: italic; font-weight:bold;}
However, there may still be times when using a B or I tag to indicate visual formatting is the most efficient solution. From a standards point of view, a stylesheet solution such as <span
class="bold">Bold Text</span> is just as semantically
vacuous as <b>Bold Text</b> and consumes many more ASCII characters in the HTML file.
There are some tags which are not commonly known which are designed to represent different semantic concepts which are normally indicated by italics or other formatting changes. These tags are supported by all browsers and can be restyled with CSS.
The CITE tag is semantically designated for short citations such as book titles. The default formatting is italics, but CSS can be used to make this tag both visually bold and italics.
The VAR tag is semantically designated to represent variables in computer code or mathematical equations.
The DEL tag is semantically designated to indicate text which should be removed and should be used as a substitute for the STRIKE tag.
The INS tag is used to indicate recently inserted text or text that replaces deleted text. The formatting is underline by default, but you can use CSS to change it to some other format (perhaps a new color or with a color background).
The CODE tag is semantically designated to spell out code such as HTML tags (e.g. <br /> to use or CSS specifications (e.g. {font-weight:bold}).
This page includes information about C.S.S. (Cascading Style Sheets) for accessibility. See the list of C.S.S. style sheet tutorials if you are interested in learning more about style sheets. This site also includes a page on C.S.S. Rollovers.
The use of style sheets to provide formatting has several accessibility advantages including the following:
See some code examples below.
However, care must be taken that Web sites are still readable on visual browsers with style sheets turned off. See a later section for details on what to avoid.
SECTION 508 - Documents shall be organized so they are readable without requiring an associated style sheet.
NOTE: The iCita Firefox Accessibility Toolbar will allow you to display your Web page without your CSS markup.
Do not use "visibility: hidden" to hide text from visual browsers; it also hides it from screen readers. Use color (e.g. white on white) or negative margin positioning to 1px to hide text from visual browsers. See Accessible Methods for Hiding Text for details.
Remember that any tag can be styled. This includes accessibility tags such as TH, CAPTION, STRONG, FIELDSET, LABEL, and even B, I and OPTION or SELECT.
Avoid using float:right, since it typically requires coders to place elements which will be displayed on the right BEFORE elements placed on the left. Screen readers will read files in code order, not in layout order. A layout table may sometimes be more accessible than complicated CSS layouts.
If you use absolute positioning, be sure that the positioned text is in logical order so that text will be coherent with CSS disabled.
It is also important to preview styled sheets in several browsers. Implementation is still not standard across all browsers. Some text formatting may not occur in a particular browser, and in the worst case scenario, there may be overlapping text blocks.
Style sheet commands should be stored in another .css text file, not embedded in the HTML document itself. This allows users to completely override your style sheet
C.S.S. commands for fixing absolute font sizes should be avoided. Use relative font size scales instead.
Care should be taken that color schemes and backgrounds are accessible.
Style sheets are designed to allow you to globally specify colors, fonts and backgrounds for an entire Web site. For instance, if you specify that all H1 tags should be centered, then you do not need to repeat the ALIGN="center" tag on every page.
Here are some examples of how Style sheets can improve accessibility and reduce code maintenance.
The generic specifications for margin and line spacing are not optimized for screen legibility. Compare the following two paragraphs - one style for legibility and one with no styling.
Increased side margins, Verdana specified and line spacing increased slightly.
SAMPLE PARAGRAPH: Style sheets are designed to allow you to globally specify colors, fonts and backgrounds for an entire Web site. For instance, if you specify that all H1 tags should be centered, then you do not need to repeat the ALIGN="center" tag on every page.
body: {margin-left: 25px; margin-right: 25px;
font-family: Verdana,Arial,Helvetica,sans-serif;
line-spacing: 120%}
Text goes to edge of screen, is single spaced and in Times New Roman (bad for monitors).
SAMPLE PARAGRAPH: Style sheets are designed to allow you to globally specify colors, fonts and backgrounds for an entire Web site. For instance, if you specify that all H1 tags should be centered, then you do not need to repeat the ALIGN="center" tag on every page.
Sample H1 - Centered and colored blue
h1 {color: #000066; text-align: center;}
...
<h1 > Sample H1 </h1>
<h1 align="center"> <font color="#336699> Sample H1 </font> </h1>
This is a centered pink div with dotted black border. Actually it's a P with a style specification.
.pinkdiv {border: 1px dotted black;
background-color: #FFAADD;
padding: 7px;
margin-left: 150px; margin-right: 150px;}
...
<p class="pinkdiv" > I want a centered pink div area </p >
1. Displaying colored or dotted borders extremely difficult and would probably require nested tables.
2. For a pink table with a plain border:
<table align="center" width="60%" cellpadding="7" border = "1">
<tr>
<td bgcolor="FFAADD"> I want a pink table </td>
</tr>
</table>
NOTE: Data tables are still be the best option for presenting tabular data.
Styling can become inaccessible when style sheet commands are mixed with older HTML formatting tags. When Style sheets are turned on, the result may be readable. But with Style sheets turned off, only the older HTML formatting is read and the page may become unreadable. For example:
Some sites use different "floats" to position content without tables. However, some style attributes, such as float: right cause text to place in an order different from that of the HTML file. For instance the following site uses float: right to position the gray box to the right of a list of links.

But in the code, the list in the gray box actually comes first. When CSS is disabled, you can see that list above the links. Fortuniately, the text can be read in either order.
This Web site has a black linen background with a pale rose area in the center with dark text. The color contrast is acceptable.
The designer used CSS for the pink area and an HTML tag to specify the black linen background as <body background="blacklinen.gif">.

Becaiuse only the rose text was formatted with CSS, when the style sheet was turned off, the result was black text and blue links on a black textured background - clearly unreadable in a visual browser.

Once the site was redesigned so that the background image was included in the CSS file and not in the HTML, the site without CSS was readable, although it appears with standard white background with black text.

Notice that the use of H tags to provide content structure means that sections are easier to distinguish even with Style sheets turned off.
If you use rollovers to change text format, consider using CSS rollovers. They generally do not interfere with screen readers, are better for low vision users because they edges remain crisp when the page is zoomed and are usually easier to maintain on the fly. See below for examples of different types of CSS Rollovers.
Rollover links should be distinct from other text even in the "Off" state. Otherwise many users, especially those with older browsers may not realize they are there.
If you use an image rollover with Javascript, then make sure the ALT tag in the "Off" image is descriptive. For rollovers showing complex concepts, make sure a text description is included. See example below.
There are several specifications you can use to create a different type of rollover effects including changes in font color and style, changes in color background and additions of borders to create "buttons". This page will start with examples of font format changes.
Note: These techniques will work in Firefox, Mozilla, Internet Explorer, Safari or Opera, but not in earlier browsers such as Netscape 4.7. It is important to make sure that links are distinctive even in the "off" state.
For global specifications, you would need to create a . css file and write specifications for these classes:
a (all links)
a: hover (links with the mouse cursor over it)
a: visited (visited links)
Here is some code for making all links navy blue (#000066) which change to bright green (#006633) when the mouse passes over it. I've also specified "font-weight:
bold" in order to make the links more visible.
a {color: #000066; font-weight: bold} /*Navy Blue*/
a:hover {color: #006633; font-weight: bold} /*Green*/
a:visited {color: #9900FF; font-weight: bold} /* Purple */
<a href="#">Green Link </a>
The key to the rollover is in the specification in the a:hover class. Because it has been specified as a different color than the a (anchor) class, all links for a document linked to that style sheet will change to green when the mouse rolls over it. The style is coded once, but all links become rollovers automatically.
With style sheets, you can also add specifications to change the background color of a link. In this case, this is done by doing nothing to a, but making the a:hover tag change it's color to white and it's background-color to gray (#333333). A left-padding and a right-padding of 3 pixels have been added to make the item more "button" like.
a {padding-left: 3px, padding-right: 3px}
/* You need to specify padding in order to keep the text in the same position
as in a:hover */
a:hover {color: #white; background-color: #333333
padding-left: 3px, padding-right: 3px }
<a href="#">Background Changing Link </a>
One advantage of stylesheets is that you can create specify different behaviors of the same tag depending on the context. For instance, many sites visually distinguish between two types of links - those embedded in the text and those used for general navigation (e.g. "Home" and "Sitemap"). Links embedded in the text are typically underlined, while those used for navigation may be made to look more "button" like with different background colors and no underlining.
In this first example, I will create a class of navigation links which are bigger, green (#006633) and not underlined. When a mouse rolls over them, an underline will appear and the color will change to black. Links like these might be placed within a colored table layout cell, toolbar or div.
The first step is to create a class of links called "mainnav". This is done by declaring "a.mainnav," then specifying the style classes as before. In this case I need to add a statement "text-decoration:none" in order to block the default underline of most links. To get the underline to appear at a mouseover, a parralel "a:hover.mainnav" class is declared and is specified as "text-decoration: underline." Finally, in order to block any color changes for visited links, a statement a:visited.mainnav is added and given the same values as a.button.
Within the HTML file, all links which are meant to be button like are specified as <a class="mainnav" href="" >. See the example below.
/* .mainnav means the "mainnav" class*/
a.mainnav {font-weight:bold; font-size: 125%; color: #006633
text-decoration:
none }
a:visited.mainnav {font-weight:bold; font-size: 125%; color: #006633
text-decoration:
none }
/* You need to specify identical formats for a.button and a:visited.button
in order to keep appearance the same*/
a:hover.mainnav {color: black; text-decoration:underline}
<a href="#" class="mainnav" >Main Navigation
Link </a >
The trickiest type of link to encode are links which look like buttons. The simplest way to do it is to create a class of link which has one background color for the a and a:visited statements and another for a:hover. Here a class called "button1" has been created which starts out with black, non-underlined text with a pink background (#FFCCFF) and changes to white text on a purple background. As with the second case, a left and right padding of three pixels have been added. See the example below.
/* .button1 means the "button1" class*/
a.button1 {font-weight:bold; font-size: 125%; color: black;
background-color:
#FFCCFF; text-decoration:
none;
padding-left:
3px; padding-right: 3px}
a:visited.button1 {font-weight:bold; font-size: 125%; color: black;
background-color:
#FFCCFF; text-decoration:
none;
padding-left:
3px; padding-right: 3px}
/* You need to specify identical formats for a.button and a:visited.button
in order to keep appearance the same */
a:hover.button1 { color: white;
background-color:
purple; text-decoration:
none;
padding-left:
3px; padding-right: 3px}
<a href="#" class="button1" >Simple Button
Style Link </a >
Changing the background color is still somewhat limited though. Ideally, one would also want to specify borders, and add additional padding at the top and bottom of a link.
For this example, I will create a class of links which have a gray background (#CCCCCC), a padding of five pixels and a black, three pixel solid border. When the mouse rolls over it, the link will become black with white text and a white border.
In order to access controls for borders and padding, you must specify that a specific class of links will be treated as a "block", like a P or H1, instead of as a "span". This is done by specifying a region such as a P, here called "navgation" within which a, a:visited and a:hover will behave as "blocks". To declare this, a statment p.navigation a is added and given its features. The browser will interpret these as meaning that any A tag found within a <p class="navigation" > statement will behave as a block. The p.navigation class itself contains specifications for font size, center alignment and a width of 50% of the page. These standardize the appearance of the "button" across the three type of a classes.
The statement for p.navigation a specifies no underlining, bold face and background-color as before. The property display:block will access the additional properties such as padding: 5px and border: 1px solid black. Similar statements for p.navigation a:visited and p.navigation a:hover are needed to complete the effect. See the example below.
p.navigation {font-size: 125%; font-weight: bold; text-align: center;
width:
50%
}
/*p.navigation is the holder unit for the block links. It also specifies larger
bold text*/
p.navigation a {display:block; color: black;
background-color:
#CCCCCC; text-decoration: none;
padding:
5px; border: 3px solid black}
p.navigation a:visited {display:block; color: black;
background-color:
#CCCCCC; text-decoration: none;
padding:
5px; border: 3px solid black}
p.navigation a:hover {display:block; color: white;
background-color:
black; text-decoration: none;
padding:
5px; border: 3px solid white}
<p class="navigation"> <a href="#">Complex
Button Link </a> </p>
Since CSS can also be used to specify background images, almost all the visual effects found in a JavaScript rollover are available through CSS.
First, you will need to know the pixel dimension of your image. Note that if two images are used, the total dimensions should be the same, even if you add visual padding in one image.
Note: If the rollover is being used to compare two images, then a text description must be included in either hidden or visible text.
In this case, the links are embedded in a p.surprise class which is set to the height and the width of the image(s) - which is 250 pixels wide and 50 pixels high. As with the previous example, the A tags must be treated as a block so that the background can be formatted with CSS. Images are specified in the background-image: url() specification.
In this case, only the a:hover is specified with a background image. The a and a:visited just have a color code for their backgrounds.
p.surprise {font-size: 125%; font-weight: bold; text-align: center;
width: 250px; height: 50px}
/*p.surprise is the holder unit for the block links. Height and width match that of the image. It also specifies larger bold text*/
p.surprise a {display:block; color: black;
background-color: #CCCCCC; text-decoration: none;
padding: 5px; border: 1px solid black}
p.surprise a:hover {display:block; color: black;
text-decoration: none; background-image:url(surpriseme.gif);
padding: 5px; border: 1px solid black}
p.surprise a:visited {display:block; color: white;
background-color: black; text-decoration: none;
padding: 5px; border: 1px solid white}
<p class="surprise"> </p>
This rollover should reveal a colorful spectrum background image.
There may a few cases in which it is desirable to create a rollover with Javascript, but there are some guidelines to follow.
The ALT tag describes the two images - in this case alt="Color
Chart versus Grayscale Chart". If this were a
link, the ALT tag would describe the location of the link.
Follow other guidelines for JavaScript and other scripting processes.
If the comparison of the two images were critical, then a link to a longer text description describing the change would be needed. For example:
This rollover shows a color bar chart with red, blue and green contrast with a grayscale version in which the contrast is almost muted. It is an example of how color coding alone can be inaccessible.
Charts, graphs and maps use visuals to convey complex images to users. But since they are images, they provide serious accessibility issues to color blind users and users of screen readers. See Accessible and Inaccessible Chart Samples for details on how to make charts more accessible.
If the data in a chart, graph or chart is crucial to the content of the Web page, then you must provide a text description of the image. In some cases, a numeric table replicating the chart data could provide additional accessibility.
SECTION 508 - A text equivalent for every non-text element shall be provided.
Supplement color coding of charts with texture, differences in line style, text in
graphs or shades of one color to improve accessibility for color blind users. Charts should be readable in black and white.
Note: The default settings of the Chart Wizard in Excel are not color accessible. Use the formatting tools to change line styles and colors.
SECTION 508 - Web pages shall be designed so that all information conveyed with color is also available without color.
Don't convert tables of data into images - that's what data tables are for.
Here is a line graph of showing operating system preference over time. Note that data is approximate for demonstration purposes.
There are several approaches you can take depending on what data you wish to highlight. One is to summarize the key trends of the chart as below.
Sample Text Summary - In the early 1990s, the Macintosh was extremely popular among college students (about 90%), but by 2005, Windows was the most popular (85%) with Linux (10%) and Mac (5%) far behind.
Another approach is just to repeat a data table with the scope and TH tags properly marked as below. This allows users of screen readers to access the same numeric data that is available in the chart. In addition, a caption or SUMMARY tag can be added to provide further details.
| Platform | 1990 | 2005 |
|---|---|---|
| Windows | 10% | 80% |
| Macintosh | 90% | 5% |
| Linux | 0% | 15% |
These charts will document the number of computers by platform.
Preferred Computer Platform in Linguistics Seminar of Twenty Students Platform Number of Students Windows 16 Linux 3 Macintosh 1
Below are some examples of charts with inaccessible and accessible color choices and formats.
Below is an image of an inaccessible bar chart for distribution of platforms in 2003. Solid red and green are used for colors and may not be distinguishable for color blind users.


From a color perspective, the image is inaccessible because charts are color coded in shades of red, green and blue which are of similar brightness. The only key to the chart refers to the colors; thus only color conveys information.
The data from the first table has been redone as a bar chart, but the colors have been changed to shades of blue. Color blind users can use the different levels of darkness to tell the platforms apart. In addition, labels for each platform have been added to the bottom of the chart, so that viewers do not even have to refer to the key.

For line charts, changing the style of the graph lines and adding labels increases usability.
This is an inaccessible line chart based on the data in the table comparing percentage of Mac and Windows users from 1990 versus 2003.

This chart uses lines three colors of similar brightness with a key that only refers to color. In grayscale, these colors are virtually identical.
The chart replaces three solid lines with one solid line and two distinctive solid lines and adds labels for each line.

If a participant is using a screen reader, make sure you use a chat client that is compatible with a screen reader. The screen reader should identify sender name, read text from incoming messages and inform the chatter where to input messages.
When using Computer Mediated Communication (C.M.C.) technology such as online chat, blogs or threaded discussion message board or e-mail, be sure to describe any ASCII art, attachments, or audio/visual files that are referenced.
Assignment: By Friday, send me your thoughts on the lion image above for the "Tracking the Lion" logo. This image is a realistic male African lion in profile. Should the mascot be changed? Why or why not?
NOTE: This description is also useful for students who cannot see an image attachment or image file online for technical reasons.
Many e-mail programs allow users to add a custom signature line and many people like to incorporate ASCII art or the use of punctuation symbols and letters to simulate an image. Here's an ASCII Nittany lion used in many e-mail signatures
This image is a screen capture, but if this had been true ASCII art, then a screen reader would have read: left parenthesis, quote grave accent dash quote just for the left ear.
If your signature line includes ASCII art, then make sure it is placed below all the essential contact information so users of screen readers can stop reading the content once they come to the ASCII art.
These pages deal with different topics on color and color blindness.
In terms of color blindness, the most problems seem to occur with spot colors especially when many colors are combined. Photographs tend have enough color and shade changes to be interpretable to color blind users.
For low vision users, a key issue is ensuring there is sufficient contrast in lights/darks between the background and text or objects in the foreground. Sufficient contrast is also important in design for color blind users.
Do not rely on color codes alone to provide information. Always include additional changes in shape or text.
SECTION 508 - Web pages shall be designed so that all information conveyed with color is also available without color.
If you are using colored text or colored backgrounds, test that text and background have a sufficient contrast in light/dark or "luminosity." Juicy Studios hosts an online color contrast tester in which you enter the the color codes for the text (foreground) and background to receive a contrast value. You want a contrast ratio of at least 4.5 to 1.
Note: In some other tools, you may want a number greater than 125.
Avoid contrasts of red and black, since some color blind users do not perceive reds (i.e. red is the same as "no color" or black).
In terms of color deficiency (color blindness), the safest colors are black, white and gray followed by blue and yellow. Contrasting red versus green is the most problematic, but can be usable so long as supplemental information is provided.
To ensure that color contrasts are visible to the most viewers, use a
color blind simulator. Having enough contrasts in darkness is important for low vision and color blind users.
Note: There are some color combinations, such as some shades of teal and yellow which are acceptable in grayscale, but still problematic for color blind users.
Adjacent areas of brightly colored hues also cause difficulties for normal-vision because of "color vibration."
Avoid long blocks of light text on dark backgrounds; they are generally more difficult to read.
Strongly textured backgrounds should be avoided since they make text harder to read. Subtly textured backgrounds or colored/textured toolbars can add interest without compromising legibility.
Subtle variations of colors may be lost in different monitor settings. For instance, flat panel screens are brighter than older monitors; Mac colors are lighter than Windows colors. Finally, some low vision users set their monitors to high color contrast, reducing the mid-value range. If possible, test your colors on different monitors or different gamma settings.
The human eye contains rods which detects levels of light (dark versus bright) and three kinds of cones which distinguish among the different colors. If none of the cones are functioning (very rare), then a person has grayscale vision. If the cones are semi-functional (also rare), then the person sees colors, but they are muted.
More commonly, a person with color blindness (or "color deficiency") has a difference in only one of the rods, and it is usually either the red rod or the green rod. The result is that some colors appear to be more similar or are muted. The different type of deficiencies are simulated below.
Some color blind users are lacking the capability to detect the lower color wave frequencies associated with red. For these users, red color waves read as "no signal", or "black". These users confuse red and black, so this contrast should be avoided whenever possible. Red and white is legible, but indistinguisable from black and white.
The black text on red sign becomes black on black for some color blind users.
| Normal Vision | Warning | Warning |
|---|---|---|
| Red Vision Missing | Warning | Warning |
If one or two sets of cones do not function correctly, then a person will have trouble telling certain colors apart. Almost 10% of men are red/green color blind; another group are blue/yellow color blind. Despite the fact that red-green contrasts are very distinct for about 95% of humanity, there are about 5% of people for whom this is non-functional. This is exacerbated by the fact that red and green are nearly identical on a gray scale monitor. See examples below.
NOTE: Red-Green color blind people are better able to find camouflaged objects in natural settings. See Visicheck Article for more details.

The paragraph above is "Merry Christmas" in green text on a red background which a color blind person may not be able to read. This is also problematic because it causes a visual vibration for users with normal color vision.

In grayscale, there is only a slight contrast because red and green are of nearly equal brightness.
Appears as dark olive on medium olive in normal color vision. Simulation courtesy of Visicheck.

Actually appears as teal and magenta. Simulation courtesy of Visicheck.


The yellow Background separates the areas of red and green and provides a contrast in brightness, making the sign more legible. See the grayscale example below.

Although it is difficult to determine exactly how a color-blind person sees the world, it is usually the case that if something is legible in grayscale, then a color-blind person can also view the information, although it may not be particularly appealing to that person. This is because, in most cases, the rods are functional and are still able to distinguish levels of light and dark.
Note: There are some color combinations, such as some combinations of teal and yellow which are O.K. in grayscale, but still problematic for color blind users.
Color Vision (Cal Henderson) - Test color schemes with almost all forms of color blindness
Visicheck Color Blindness Tester - Allows you to test images and live Web pages for red-green and blue-yellow. color deficiencies.
An important aspect of color for both low vision and color blind users is that the there be sufficient contrast in lightness and darkness between the foreground (text or graphics) and the background. Maximum contrast is black versus white, but this can be considered too overwhelming (it might cause glare). Other colors can be used such as navy, dark green, maroon for darks and pastels for light to lessen the contrast.
However, some modern designs are so "subtle" that the contrast can actually be insufficient for some readers. Examples include contrasts in light vs mid gray, mid pastel versus darks or white versus light cyan (blue-green). If you plan to use a subtle color palette, it is recommended that you use a color analyzer to ensure there is sufficient contrast.
In most testers, you enter in the hexadecimal color code for foreground (text) and background, and the tester generates a numeric result. Usually a low number or ratio indicates too little contrast.
The WCAG 2.0 recommends the following luminosity ratio standard of 1 to 4.5 for main text and 1 to 3 for large scale text (18 pixels or 14 pixels bold).
Note: If your target audience is mostly low vision, then a ratio of 1 to 7 is recommended.
This is a relatively recent recommendation, so the toolset is currently limited (as of Spring 2009), but these links are available:
An older algorithm compared the difference in "brightness" between the background and foreground, and the target difference was 125 or greater. Overall results are similar to the luminosity contrast test, but the older test is generally not as strict.
If your color scheme fails the test, it's likely that only a few minor adjustments may be needed to correct the color values to a more acceptable level. See examples below.
Note: "Large text" = 18 pixels or bold face, 14 pixels
| Grey Level | WCAG Ratio | AERT Difference |
|---|---|---|
| #000000 (Black) | 21 : 1 (pass) | 255 (pass) |
| #333333 | 12.63 : 1 (pass) | 204 (pass) |
| #666666 | 5.74 : 1 (pass) | 153 (pass) |
| #777777 #777777 (large) |
4.48 : 1 (fail) OK for large text |
136 (pass) |
| #818181 #818181 (large) |
3.9 : 1 (fail) OK for large text |
125 (fail) |
| #999999 | 2.85 :1 (fail) | 102 (fail) |
| #CCCCCC | 1.61 : 1 (fail) | 51 (fail) |
| Cyan Level | WCAG Ratio | AERT Difference |
|---|---|---|
| #003333 | 13.8 : 1 (pass) Hard to detect as not black |
219 (pass) |
| #006666 | 6.79 : 1 (pass) | 183 (pass) |
| #008585 | 4.47 : 1 (pass) | 161 (pass) |
| #009999 #009999 (large) |
3.49 : 1 (fail) OK for large text |
147 (pass) |
| #00CCCC |
2.00 : 1 (fail) | 111 (fail) |
Color coding is possible as long as the color information is supplemented with differences in shape or text. Here are some accessible and inaccessible examples.
| Check site with color checkers or grayscale minor | |
| Use color coding alone | |
| Use blue/green or black/white/gray | |
| Use red/green colors |
A color blind user could have trouble distinguishing a green box from a red box. Furthermore, a colored cell would be inaccessible to screen readers unless invisible text were included.
| + | Check site with color checkers or grayscale monitor settings |
| x | Use color coding alone |
| + | Use blue/green or black/white/gray |
| x | Use red/green colors |
Color deficient users can rely on cues of shape in the "+" and "x" symbols to distinguish "do's" and "dont's". Using text symbols with a key is also more accessible to screen readers.
| Do | Check site with color checkers or grayscale minor |
| Don't | Use color coding alone |
| Do | Use blue/green or black/white/gray |
| Don't | Use red/green colors |
Color coded, but text labels makes it accessible to color blind users and screen readers.
Although changing a background on a Web page to a bright color or distinctive background can add excitement, these backgrounds can also make it difficult to read Web pages. In general, it is best to use dark text on light colors and subtly textured backgrounds. Here are some examples below.
Although
changing a background on a Web page to a bright color can add excitement, these backgrounds can also make it difficult to read Web pages. In general, it is best to use dark text on light colors for long passages.
This light green text on dark green would cause eyestrain if an entire article were formatted this way.
Although changing a background on a Web page to a bright color can add excitement, these backgrounds can also make it difficult to read Web pages. In general, it is best to use dark text on light colors for long passages.
However, even this dark green text on lighter green should be used only for short paragraphs. An entire page of this could be difficult to read.
This is a not-so-good Celtic background texture - Although changing a background on a Web page to a bright color or distinctive background can add excitement, these backgrounds can also make it difficult to read Web pages. In general, it is best to use dark text on light colors for long passages and subtly textured backgrounds only.
In a visual browser, this text is almost illegible because of the strong contrast and rapidly changing colors in the background image.
This is a much more subtle Celtic background texture - Although
changing a background on a Web page to a bright color or distinctive
background can add excitement, these
backgrounds can also make it difficult to read Web pages. In general,
it is best to use dark text on light colors for long passages and subtly
textured backgrounds only. Here are some examples below.
The background image is more subtle, almost invisible, and is lightly colored. In small passages, legibility would be acceptable.
In addition to the issues of color blindness mentioned above, placing areas of brightly colored hues together can be hard for users with color vision to read. Bright colors cause an afterimage effect.With only one bright color, the after image is usually not bothersome, but with two bright colors together, the afterimages interfere with one another, causing a "visual vibration." This can be reduced by placing a neutral color between the two areas of bright colors or by making one of the colors a pastel or dark shade.
|
red/green |
red on green |
green on red |
|
blue/orange |
blue on orange |
orange on blue |
|
green/magenta |
green on magenta |
magenta on green |
|
yellow/cyan |
yellow on cyan |
cyan on yellow |
|
blue/magenta |
magenta on blue |
blue on magenta |
|
orange/yellow |
yellow on orange |
orange on yellow (not so bad) |
|
blue/green |
green on blue |
blue on green |
Users with hearing disabilities will have problems with audio (unless it is captioned), but may be able to use text chat and images.
A live captioning service can be scheduled ahead of time for a fee. Captions can also be included in session recordings. See the "Audio Captioning" options on Setting Up Audio and Video or contact breeze@psu.edu for more information. See recordered presentation on
Adobe Connect uses a Flash interface. Confirm that users with screen readers can access tools. If there is an issue, then consider using a telephone for audio or an accessible text chat or voice chat client such as Skype which includes JAWS scripts for Skype.
If you are screen sharing a document such as a Word file or a Web site, consider enlarging text to enhance legibility. You can also instruct users to click the Full Screen button beneath the shared document (in the "Share Pod"). See Adobe Connect Display Strategies for more information.
If your audience includes low vision participants, confirm that the interface is legible. Users can both enlarge the window and zoom in on the interface in the View menu (Windows) or Command-+ on the Mac (Firefox). Note: On a Mac zooming cuts off the bottm portion of the window, and it may not be possible to return to the original view without closing and re-opening the meeting room.
If your presentation includes a PowerPoint file with images, then include Alternative Text or text descriptions for images. Transitions (e.g. flying bullet points) should be minimized since each transition is converted into a seprate slide, one for each bullet point displayed.
Dreamweaver comes with a varity of tools and reports to help create accessible sites from the start.
To activate these, do the following:
Open Dreamweaver and go to File then Preferences (Windows/Mac System 9) or the Dreamweaver menu then Preferences (Macintosh OSX).
Click on Accessibility in the left side of the panel.
Make sure the options for Show Attributes when Inserting are checked for each type of HTML object.
Click OK to close the window.
The next time you insert a table, graphic, form or other media, a pop-up window will appear to prompt you to enter the appropriate accessibility tags for each item.
The Dreamweaver Properties Panel includes options for inserting accessibility tags depending on the item being edited.
For example, when an image is highlighted, the ALT tag can be edited in the Properties panel.
Dreamweaver MX includes an accessibility reports geared for W.C.A.G. standards. Go to the Site menu then Site Files, then click the Site Reports tab to view available reports.
Note: Dreameaver MX 2004 now includes reports for Section 508 guidelines.
The LIFT Plug-in for Dreamweaver is available at a discount from the Penn State Computer Store. This plug-in includes access to Nielsen Norman Group usability reports and tools for creating custom reports.
See the Penn State Access P.S.U. LIFT page for detailed documentation and free upgrades.
In Dreamweaver, when text is pasted from Microsoft Word, the Header 1, Header 2, Header 3 styles are converted to H1, H2, H3 tags. These styles are available from the Style menu in word.
Word users can use the Format » Styles options to modify the appearance of these styles in a Word document.
Detailed instructions for using Dreamweaver Accessibility options are available in the PDF attachment below. Although the handout is for Dreamweaver MX, the options are very similar in newer versions of Dreamweaver.
A floating menu is one that appears when you roll your mouse over a target area. Floating menus may be found on http://www.psu.edu, http://www.missamerica.org and other Web sites.
If your Web site includes a Javascript drop-down men or a DHTML "floating" menu, then make sure a text based menu is also included in the Web site. The menu can be at the bottom, but a visible link to a text based menu should appear at the top of a page.
SECTION 508 - When pages utilize scripting languages to display content, or to create interface elements, the information provided by the script shall be identified with functional text that can be read by assistive technology.
Although innovative, floating menus feature the following accessibility issues.
Incorrectly coded menus may not work on screen readers
.Users with mobility impairment may find it difficult to move the mouse and click on the correct option. The more submenus, the more difficult the problem.
If only part of the hierarchy is visible at any one time, users with memory or cognitive disabilities may have difficulty locating which menu to click on.
A link to a text-based menu or Site Map at the top of the page allows users unable or uncomfortable using a floating menu to use a more static set of navigational links.
SECTION 508 - When pages utilize scripting languages to display content, or to create interface elements, the information provided by the script shall be identified with functional text that can be read by assistive technology.
According to a usability study by Jakob Nielsen, the most effective drop down menus show all options available.
CSS and JavaScript can be used to hide sub menu options by default, but still make them available on a screen reader. However you must ensure that events can recognize keyboard tabbing as well as a mouse click.
Ensure that menus can be accessed through tabbing on a keyboard
Dynamic pages are created by pulling repetitive chunks of HTML code from different sources. For instance, this site uses a database engine to insert the same header and footer on each page of this Web site.
Dynamic pages or content management systems can be a convenient way to make sure navigation blocks, skip navigation links, ALT tags in headers and so forth are consistently implemented on each page. However, almost all dynamic pages require access to special server set-ups, so require input from server administrators or programmers.
Implement recommendations from the WAI-ARIA working group whenever possible. ARIA support is available in Firefox 3, Opera 9.5 and is scheduled to be available in Internet Explorer 8 (in beta as of April 2008) as well as Safari 4 (in beta).
Make sure all HTML code chunks include accessibility tags such as ALT tags, TH tags for data tables, LABEL tags for forms, and so forth.
If your system uses Javascript links, make sure to include a link to a text-only alternative navigational system such as a Sitemap.
Avoid using arbitrary database numbers for ALT tags, TITLE tags, FRAME tags and other text-alternative accessibility tags. Ideally, a content management system would allow users to enter an ALT tag text for an uploaded image.
<img src="1103AB43.jpg" alt="Image_1103AB43.jpg" >
A screen reader would say Image 1103AB43.
If possible, use a script to convert dynamic page style links (e.g. www.mysite.psu/main.php?id=11) to more traditional type links (e.g. www.mysite.psu/page11.html) They are less likely to encounter compatibility issues with screen readers or older browsers.
If you wish to experiment with dynamic page creation, the simplest technology is probably Server Side Includes. The rest require either extensive programming, access to a database backend or both.
Flash is a well-respected tool able to deliver interactive components to multiple browsers and platforms but can be problematic for screen readers and mobility impaired users. Although Macromedia is committed to providing tools to develop accessible Flash tools, ensuring Flash accessiblilty can be difficult.
Although many developers create entire modules in Flash, including navigation between pages, it may be easier to maintain the navigation, text and images in HTML and use Flash only for key animations, interactive activities or multimedia elements (audio/video) inserted within a Web page.
When navigation is in HTML, the options for accessibility are generally easier to implement.
In order to make the use of Flash files more accessible, consider these recommendations.
For animations – Start the animations in pause mode, then allow the user to start and stop as needed whenever possible. Avoid endless loop aninmations as they can be distracting for many users.
For Flash video – Flash allows developers to link to an XML caption text file. This should be provided whenever possible. See Flash documentation and tutorials for details.
Avoid including a full-screen automated Flash movie on a homepage since mobility impaired users may not be able to exit and cognitively disable users may become disoriented. These Flash files should be started by the user.
Provide keyboard alteratives for common actions and tabbing through forms. For example you can have both a zoom button and program the +/- keys for zooming in and out. See Flash documentation and tutorials for details.
Add text labels to all controls, form fields, labels and components so they can be identified by a screen reader. See Flash documentations and tutorials for details.
Flash files should follow the same principles for font-styling, color schemes, avoidance of blinking, animation accessibility and audio and video accessibility that HTML pages do. One advantage to Flash files is that images and text are vector based and are usually zoomable.
Keep text together in one object whenever possible. Screen readers may jump from text object to text object in unexpected directions.
Note: Action script can be used to control reading order in newer versions of Flash.
Minimize navigation within a Flash interface. This will minimize the amount of accessibility features needed within Flash.
Always provide a link to an accessible Flash plug-in page.
SECTION 508 When a web page requires that an applet, plug-in or other application be present on the client system to interpret page content, the page must provide a link to a plug-in or applet that complies with § 1194.21(a) through (l).
These links are current as of Flash CS4. If you use a different version, make sure you learn the techniques applicable to your version of Flash.
The links below contain information on font selection and text layout.
See also - Bold/Italics and Color.
Do not manually adjust text size for section headers and subheaders - use the proper header tags instead.
Avoid using fonts smaller than 9 points/9 pixels as they will become illegible on the Mac platform.
Use font faces which more favorable for computer screens such as Verdana, Tahoma, Lucida Grande, Arial, or Georgia.
Avoid underlined text except for links. Users unfamiliar with Web conventions may click on any underlined text.
Avoid using italic text except for short passages or when academic convention calls for it. Italics is particularly difficult to read on a monitor; in some cases, bold face can be used in place italics.
Generally use dark colored fonts on light backgrounds instead
of the reverse since these are more readable.
Note: PowerPoint presentations should be light text on dark when projected
on a screen,
If you need screen readers to distinguish bold or italic text in a different reading style for emphasis, use the STRONG and EM tags for B and I .
Whenever possible, use external cascading style sheets instead of the FONT FACE tag or inline style specifications (i.e. avoid <p style="font-family: Verdana, sans-serif" >). This allows users with certain visual problems to replace your stylesheets with their own custom style sheets tailored for their needs.
Avoid blinking text as it could trigger epileptic seizures in some users and is generally very distracting.
SECTION 508 - Pages shall be designed to avoid causing the screen to flicker with a frequency greater than 2 Hertz (cycles per second) and lower than 55 Hertz. (i.e. avoid blinking, especially in the 2-55 Hz range).
Avoid entire text blocks of italic text, colored text, underlined text, decorative fonts and capitalized letters. These formatting choices can make text difficult to read.
Avoid specifying absolute font-sizes unless absolutely necessary; otherwise zooming may be disabled for low vision users, particularly on Internet Explorer 6 for Windows.
If you do need to specify a font size, tags such as BIG or SMALL or relative sizes in CSS styles (e.g.font-size: small / font-size: 75% / font-size: .8em) instead of an absolute font-scale (e.g. font-size: 10pt).
The main concern for font size is that they are not too small.
Many low vision users use custom settings which enlarge text to the size of their choice (to levels of 300-500%). However some font size settings can interfere with that zooming mechanism. The easiest way to avoid this is to not rely on the default font settings especially for WYSIWYG editors.
If you are using a WYSIWYG editor and it provides a set of font size options for smaller text, then make sure no font size is smaller than 9 point or 9 pixels. Font sizes at 8 points or smaller can be illegible on a Macintosh, as in the example below (see the "Points versus Pixels" section below for an explanation).
The minimum font size only applies to footers, such as a copyright statement. For body text, you should leave the font size set at the default (which is usually set between 12-14 points).
The image below shows how 8 point text can be rendered in some browsers.
![]()
Ideally, CSS styles should be used for adjusting font sizes, but if you are editing HTML and cannot access the CSS file, then you can use the BIG and SMALL tags. These adjust font sizes, but not beyond the point of legibility. See example below:
Medium, Big and Small
Medium, <big>Big</big> and <small>Small</small>
If you are editing CSS, avoid using {font-size: x-small} since it is often rendered in 8 point on a Mac and becomes virtually unreadable. {font-size:xx-small} is even smaller.
Font sizes can be measured in either points or pixels, however points are not rendered consistently across platforms. Therefore if you need to use absolute font sizes, use pixels (e.g. {font-size: 12px}) instead of points. See the chart below for a comparison.
Read the next section on absolute font sizes to see some warnings about using pixels
| Windows | Macintosh | |
|---|---|---|
| 12 points | 12 point text | 12 point text |
| 12 pixels | 12 pixel text | 12 pixel text |
| 14 points | 14 point text | 14 point text |
| 14 pixels | 14 pixel text | 14 pixel text |
Note: In newer Mac browsers, text specified in point sizes may be enlarged to Windows point sizes. Pixel sizes remain consistent.
A current accessibility recommendation is to use relative font sizes such as percentages or units of .em instead of absolute sizes such as pixels or points. In older browsers (including Internet Explorer 6), an absolute font size remained set as is even if a user wanted to use the zoom command to enlarge text.
The tradeoff is that designers cannot have full control over layout (especially in terms of placement of different divisions) when relative font sizes are use. Another issue has been that results are inconsistent from browser to browser and platform to platform when using relative font sizes.
The good news is that most modern browsers, including Internet Explorere 7, Firefox, Safari, Opera, fully support zoomed text, even if the font is set to an absolute size. However, if your user base is relying on older browsers, then absolute font sizes will potentially be inaccessible.
Below are a list of fonts with notes on legibility. See the sections below for descriptions of different factors used to determine legibility. Fonts are available on PC and Mac unless otherwise specified.
| Fonts | Notes | x-height | I vs 1 vs l | zero vs O | Lower i,j |
|---|---|---|---|---|---|
| Verdana | Designed for Monitors by Microsoft. Many sites on accessibility use Verdana. | Xx Oo Aa Rr | I vs 1 vs l | 0 vs O | i,j |
| Lucida Sans (PC)/ Lucida Grande (Mac) |
Relatively new font. Used as a Mac system font. | Xx Oo Aa Rr | I vs 1 vs l | 0 vs O | i,j |
| Tahoma | Available from Microsoft | Xx Oo Aa Rr | I vs 1 vs l | 0 vs O | i,j |
| Georgia | Serif. Designed for monitors by Micrsoft. | Xx Oo Aa Rr | I vs 1 vs l | 0 vs O | i, j |
| Palatino (Mac)/ Palatino Linotype (PC)/ Book Antiqua (PC) |
Serif. Traditional print font. Weight can be light. | Xx Oo Aa Rr | I vs 1 vs l | 0 vs O | i,j |
| Fonts | Notes | x-height | I vs 1 vs l | zero vs O | Lower i,j |
|---|---|---|---|---|---|
| Helvetica | Traditional Print font. Available on Mac, Unix and new Windows. Some letter forms can be confused | Xx Oo Aa Rr | I vs 1 vs l | 0 vs O | i,j |
| Arial | A Windows analogue to Helvetica. Some typographers prefer Helvetica, but they are generally similar. | Xx Oo Aa Rr | I vs 1 vs l | 0 vs O | i,j |
| Trebuchet MS | Available from Microsoft. Good x-height, but some letter forms (e.g. "g" and &") considered too unusual for some readers, especially if there are literacy issues. | Xx Oo Aa Rr | I vs 1 vs l | 0 vs O | i,j |
| Century Gothic | Sans-serif, somewhat Art Deco. Good x-height, but some letters can be confused. Weight is light. | Xx Oo Aa Rr | I vs 1 vs l | 0 vs O | i,j |
| Times New Roman | Serif. Relatively small x-height, but succeeds in many legibility tasks | Xx Oo Aa Rr | I vs 1 vs l | 0 vs O | i, j |
| Bookman Old Style | Available from Microsoft. Traditional Serif font designed for legibility. Good x-height, but may not be on all computers. | Xx Oo Aa Rr | I vs 1 vs l | 0 vs O | i,j |
| Garamond | Available from Microsoft. Traditional font, but x-height relatively small and weight is light. | Xx Oo Aa Rr | I vs i vs l | 0 vs O | i,j |
| Comic Sans | Considered legible by some, but also "childlike". Can work on sites for younger audiences. | Xx Oo Aa Rr | I vs i vs l | 0 vs O | i,j |
| Fonts | Notes | x-height | I vs 1 vs l | zero vs O | Lower i,j |
|---|---|---|---|---|---|
| Arial Black | Available from Microsoft. Very Heavy | Xx Oo Aa Rr | I vs 1 vs l | 0 vs O | i,j |
| Arial Narrow | A narrow font which is probably too compressed for body text. | Xx Oo Aa Rr | I vs 1 vs l | 0 vs O | i,j |
| Haettenschweiler, Impact | Available from Microsoft. Very Narrow and heavy. | Xx Oo Aa Rr | I vs 1 vs l | 0 vs O | i,j |
| Harrington | Available from Microsoft. Letter forms very ornate which can slow down reading speeds | Xx Oo Aa Rr | I vs 1 vs l | 0 vs O | i,j |
| Monotype Corsiva | A cursive style font. Italic-type slant can slow down reading. | Xx Oo Aa Rr | I vs 1 vs l | 0 vs O | i, j |
Fonts can be classified as follows
Sans-serif fonts such as Verdana and Arial were originally recommended over serif fonts like Times New Roman because monitors were not able to render fonts with serifs very accurately. A lot of detail useful in print was lost on computer monitors.
However, advances in display technology can allow for more serif fonts to be used on the Web (if the audience is using recent operating systems/browsers).
The target font should be one that is available to many members of the audience. Microsoft fonts are a good source, but some fonts may be more recent than others. Also, if your audience contains a lot of Unix users, be aware that their font selection can be different from Windows and Mac.
If you specify a font in a CSS, you should include alternate backup fonts whenever possible.
The x-height is the height of any lowercase letter without ascenders or descenders. Letters used to measure x-height include lowercase x,o,a,r,m,s. Letters with ascenders include lowercase "b,d,h,k" and those with descenders include "p,q,g,j."
Generally speaking the higher the x-height in relation to a capital letter, the more legible the font is likely to be.
Another factor mentioned in legibility is how well the font distinguishes among similar characters such as capital I, number 1 and lowercase l (L) or 0 (zero) vs. capital letter O. Ideally each letter or number form should be distinct.
Weight is a measure of thickness in a letter form in comparison to height. Some fonts, such as Verdana are designed with more weight than others such as Palatino. Weight and can assist legibility because it darkens letters, but too much weight, such as in Arial Black can make a font unsuitable for body text.
Generally speaking, fonts which are wider are more legible than narrower fonts (within reason). One way to check width is to examine the letters x,o. You may also want to check narrow letters such as lowercase i,j to see how legible they are. A related concept is tracking or the width between adjacent letters.
With the exeption of headlines or decorative text, it is best to avoid large blocks of italic text, colored text, underlined text, decorative fonts and capitalized letters. These formatting choices can make text difficult to read.
Below are the examples to avoid.
Note: Blocks in CSS refers larger units of text such as a paragraph, quotation or headline.
All Italics - An entire block of italic can be hard to read because computer monitors may not render diagonal lines clearly.
All Underlined - Not only is underlined text harder to read, but underlines should only be used to designate a link.
All Colored - Subtle, dark colors can work, but not long passages of brighlty colored text. Too much color can cause eyestrain and may induce migraines.
Light Text on Dark Background
On the Web, most readers prefer to read dark fonts on a lighter background
All Decorative Font - Reading times for unusual fonts are much slower, and display technologies may affect visibility.
All Caps - TESTS SHOW THAT READERS RELY ON CUES FROM LOWERCASE ASCENDERS & DESCENDERS....PLUS, CAPITALIZATION IS EQUATED TO "SHOUTING" ON THE WEB.
Justified Text - Justified text (alignment on both the left and right margins) is currently not recommended because the justification algorithm could cause large space gaps.
See image below for an example badly justified text.
![]()
SECTION 508 - When electronic forms are designed to be completed on-line, the form shall allow people using assistive technology to access the information, field elements, and functionality required for completion and submission of the form, including all directions and cues.
Required fields should be indicated with a symbol or text such as an "(R)" and not just a change in color. The best option is just "Required", but if a symbol is used, then include a key such as "(R) = Required Field" should also be included above the FORM tag.
The Required Field indicator (e.g. "Required) should be included in the LABEL tag so it can be accessed by a screen reader.
Use the LABEL tag to match a field with a label. Because some screen readers may not implement LABEL, be sure to use other strategies for logical form layout listed below.
If you are using layout tables for a form, avoid placing a form field and its label in different table cells. You can use the BR tag between the label and the field if you need to place elements vertically.
Labels should be placed above or to the left of the corresponding element. All elements should be labeled.
If more than one input field is on the same line, then the label and its element should be on the same line on the screen.
If a series of checkboxes or radio buttons are used, then place each option on its own line so it is clear which option goes with each button.
If there continue to be concerns about the function of a form field, you can use the default text option to provide information. For instance default text could be "Enter Penn State Access ID here".
For many screen readers, the only text inside the FORM tag that is read is the LABEL and its field. Use the FIELDSET and LEGEND to add extra indormation.
Tabbing should take users from field to field in a logical order. In some cases, the TABORDER tag should be used to modify tabbing order in complex layouts.
If you include a SELECT drop-down menu with a long list of choices, uses the SIZE= attribute to add vertical height.
The OPTIONGROUP can be used to divide a long list in a drop down menu into catagories.
If the Submit button is an image, then make sure the ALT tag says "Submit".
Avoid "jump menus" which direct you to new page once you select an item. This may interfere with keyboards alternates and cause these users to only be able to go to the first item in the list. An option list with a "Submit" or "Go" button may be a better alternative.
If necessary, provide an alternate way to submit the form such as phone, mail, or e-mail. It could be as simple as allowing users to print and mail a complete form or calling a contact to have that person fill out a form for them.
Do not include the RESET button unless there is a legitimate demand for the need for a user to delete all the information in a form before it is submitted. It is very easy to accidentally press this button for users with motor disabilities or those using a screen reader.
This tag explicitly associates a form field with a label. The LABEL tag allows you to control the positioning of a label, although all results should be checked with a screen reader.
Some examples are shown below.
<label><b> Your Name </b>
<input type="text" name="yourname">
</label>
Use Alternate 2 if your layout requires the label and the field to be separated in the HTML.
<labelfor "yourname"> <b> Your Name </b> </label>
<input type="text" name="yourname"id="yourname">
Screen readers state the name of a field, then say to "input" data. Unless the labels are placed correctly users will not know which data to input in which field. Below are some accessible and inaccessible examples of form labeling.
The form above is inaccessible because the form has three unlabeled fields. A screen reader would read it as:
Instructions: Please enter your name, address, and phone number in the
fields below.
[INPUT] [INPUT] [INPUT]
The form above would be read as follows in a screen reader:
Name, Phone Number, Userid
[INPUT] [INPUT] [INPUT]
Street, City/State, Zip Code
[INPUT] [INPUT] [INPUT]
NOTE: You can use style sheets to make sure label text is always the same width.
Most browsers enable users to use the Tab key to navigate from field to field, providing accessibility to the mobility impaired and users of screen readers. In most forms, the tab order follows a logical progression from top to bottom, but if the default order is not the one needed, then the TABORDER attribute can be used to manually set tab order. For example:
<input type="text" name="textfield2" taborder="2" >
The FIELDSET tag is used to group similar options together and is signaled in visual browers with an outline. The LEGEND tag adds a text label to the field set. See example below.
<fieldset>
<legend>Identify Current Student Year</legend>
<label><input type="radio" name="class" id="Freshman" value="1">Freshman</label><br />
<label><input type="radio" name="class" id="Sophomore" value="2">Sophomore</label><br />
<label><input type="radio" name="class" id="Junior" value="3">Junior</label><br />
<label><input type="radio" name="class" id="Senior" value="4">Senior</label>
</fieldset>
When a drop-down menu has a long list of selections (e.g. a list of Penn State campuses), selection may difficult for motion-impaired users who have difficulty manipulating a mouse or some cognitively disabled users who may lose track of where they are in the list.
Including a SIZE="2" attribute increases of the height of the menu to two items displayed allowing users to enter it with a keyboard and for users to view more than one item. The SIZE can be set to other values such as "3" or "4" depending on user needs. See an example below.
<select name="Campus" id="Campus" size="3">
<option value=""> </option>
<option value="OZ::Abington Campus">Abington Campus (OZ)</option>
<option value="AA::Altoona Campus">Altoona Campus (AA)</option>
...
</select>
The OPTIONGROUP tag can be used in SELECT menus to group a long list of options into different categories in the menu. See the example below.
This form asks users to select a favorite color word and divides the list into types of blue-greens and types of reds.
<label>What is your favorite color?
<select name="color" id="color">
<optgroup label="Blue-Greens">
<option value="bgteal">Teal</option>
<option value="bgcyan">Cyan</option>
<option value="bgaqua">Aqua</option>
</optgroup>
<optgroup label="Reds">
<option value="rscarlet">Scarlet</option>
<option value="rvermillion">Vermillion</option>
<option value="rcrimson">Crimson</option>
</optgroup>
</select>
</label>
</form>
HTML frames can be problematic because 1) some older browsers, including the text browser Lynx do not support them 2) individual pages can be hard to bookmark 3) the hierarchy of the pages may not be clear in screen reading mode and 4) there is less screen space that can be used to present content.
For that reason, many users manually switch out of frames view for many sites. Consider avoiding frames unless they are needed for a particular Web application. If frames are needed, remember these tips:
If you use frames, clearly identify each frame in the following ways.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> SECTION 508 - Frames shall be titled with text that facilitates frame identification and navigation.
Whenever possible, include duplicate navigation within the content frame, especially a link to a sitemap, in case users "right-click" to just open up the content frame only (thus manually leaving frames mode)
Include <noframes> content including basic navigation for older browsers which do not support frames.
A link to a "No Frames" version is often recommended. Placement towards the top of the homepage is best.
Alternative to frames include tables and server side includes to place in standardized headers and navigation.
|
Top Title Frame
My Accessible Frames Site |
|
|
Left Navigation Frame MAIN MENU No Frames View |
Right Content Frame
H1 Header Here for Page TitleRest of content Duplicate navigation for accessibility |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<head>
<title>A page that contains frames</title>
</head>
<body>
....
<frameset rows="80,*" frameborder="no" framespacing="0" border="0">
<frame src="titlebar.html" title="My Page Titlebar">
<frameset cols="175,*" frameborder="no" framespacing="0" border="0">
<frame src="mainmenu.html" title="Main Menu" name="mainmenu">
<frame src="initialcontent.html" title="Page Content" name="content">
</frameset>
Note that all NAMES , TITLES and file names indicate which type of content is available. Avoid using generic names like "left frame" or "frame01".
Here is an example of NOFRAMES code with skeletal navigation makes the site accessible to non-frames browsers.
<noframes>
<h1> Welcome </h1>
<p> This page... </p>
<h2> Main Menu </h2>
<ul> /!-- Alternative No Frames Navigation --/
<li> <a href="page1.html">Page 1</a></li>
<li> <a href="page2.html">Page 2</a></li>
<li> <a href="page3.html">Page 3</a></li>
<li> <a href="pagen.html">Page n</a></li>
</ul>
</noframes>
</frameset> </html>
Many tags in HTML were developed not to assist formatting but to provide information on the structural hierarchy of a document. In order to facilitate accessibility as well as standards, it is best to use the tags for the intended purpose in the information hierarchy rather than for pure formatting purposes. In many cases, this will make your document easier to edit as well.
Use the H1, H2,...H6 tags as indicators of information hierarchy within a document, not just as formatting elements. Screen readers in particular may just scan a page for appropriate H1, H2 and H3 elements. See Header examples below.
Many experts recommend reserving H1 for the page title, H2 for major headings and H3 for major sub headings.
If you need to indent text for a quote it is generally preferable to use the BLOCKQUOTE tag rather than a UL unordered list tag. The UL tag should be reserved for true lists containing LI elements.
If you need to indent text stylistically (e.g. indent all paragraphs), it is better to use a CSS specification and add space to the left margin (e.g. {margin-left: 15px}) or left padding.
Use the P paragraph tag to separate paragraphs instead of multiple breaks (e.g. BR BR ). This encloses blocks of text within their own structural elements. Some screen readers are able to jump from P to P but not BR to BR.
Do not use the FONT tags. Experts recommend using cascading style sheets for specifying font color, font-size, font-face and backgrounds (versus the FONT tag). This allows a user with color vision or low vision to override a problematic stylesheet with one that they prefer.
In Word, using the Heading 1, Heading 2 styles performs a similar function as H1, H2 do and may be converted to approproate H tags in different conversion tools. You can edit Word Styles to change the appearance of these headers.
Use the H tags to mark document headers instead of changing FONT sizes.
In this example, the <font size="+1" color="#000066" (navy) > and <b > tags have been used to create large sub headings.
Topic 1
Content
Topic 2
Content
A screen reader set to a scanning mode would not list these as topics. In addition the code contains more formatting tags than needed.
<p> <font size="+1" color="#000066"> <b> Topic
1 </b> </font> </p>
In this example the H2 tag has been used and has been styled so that it is automatically navy.
Content
Content
A screen reader set to a scanning mode would list "Topic 1" then "Topic 2"
h2 {color: #000066}
...
<body>
<h2> Topic 1 </h2>
Do not use the H tags just to format text to a larger size.
In this example, the H1 tag is used to increase font size in the table cells. The screen reader in scanning mode will could read all the H1 cells out of context. In this case you could use CSS to ensure that the TH table header cells are styled with larger text.
| Vader | Luke | Obi-Wan | |
|---|---|---|---|
| Overall Grade | C– | A | A+ |
| Summary | Strong technical skills, but too quick to use them in an aggressive manner. Counseling on family issues may be needed. | Technical skills still weak, but has excellent communication and relationship skills. May need to develop assertiveness. | Strongly improved management and mentoring skills. Has clearly learned much from previous mistakes. |
A screen reader scanning H1 tags would read Vader, Luke, Obi-Wan, Overall Grade, Summary
Image maps are used to define regions within a larger image as links. For instance, Web sites in which you click a state on a U.S. map to see resources for that state use image maps. Unless special precautions are taken, screen readers will not be able to identify links embedded in an image map.
1. Whenever you use a client side image map be sure to include the ALT attribute within each AREA tag (the hot spot) in order to provide an alternative text link for screen readers. The NAME attribute should also be included in the MAP tag.
SECTION 508 - A text equivalent for every non-text element shall be provided.
2. If images are used as links in the image map, use the TITLE attribute in an AREA tag (hot spot) to provide a visual tooltip.
3. Avoid CGI server-side image maps whenever possible and use client-side
image maps with the MAP tag instead.
NOTE: Image maps produced by Dreamweaver, FrontPage and other HTML editors are usually
client-side
image
maps.
SECTION 508 - Client-side image maps shall be provided instead of server-side image maps except where the regions cannot be defined with an available geometric shape.
4. If CGI server-side image maps are needed, then provide an separate text-based menu.
SECTION 508 - Redundant text links shall be provided for each active region of a server-side image map.
Generally speaking client-side image maps are preferred to server-side image maps for accessibility purposes. In addition, a server-side image map is more difficult for one person to maintain because it involves programming a CGI; therefore client-side image maps are used much more often.
A client-side image map includes coordinates for different links embedded within an image. Some source code for a client-side image map would look like this.
Note that the ALT tag is included for the main image at top and each hot spot in order to provide a text alternative for screen readers. Titles for hot spots are included in order to display tooltips.
<img src="examples/ANGELHeader.jpg" alt="Penn State Links Menu" width="586" height="72" border="0" usemap="#Map">
<map name="Map">
<area shape="rect" coords="245,52,317,72" href="http://www.psu.edu" alt="Penn State Home Page" title="Penn State Home Page" >
<area shape="rect" coords="324,55,366,70" href="http://wwww.lias.psu.edu" alt="LIAS-Libraries Catalog" title="Libraries Catalog" >
...
</map >
A server-side image map uses a CGI script to access an image map file on your server. Some source code for a server-side image map would look like this:
<a href="/cgi-bin/imagemap/psu.map"> <img src="psu.gif" ismap
width="160" height="140" border="0"> </a>
Note that this code does not allow for any ALT or TITLE tags to be included.
To make this server-side client map accessible, you can add a text based menu such as
Whenever you use an image, be sure to include an ALT tag within the IMG tag to provide a clear text alternative. ALT text should be used for all images, graphical bullets, and graphical horizontal rules. If there is no ALT tag, then screen readers will hear [IMAGE] but no additional information. ALT text should let the user know what an image is and the purpose of that image.
SECTION 508 - A text equivalent for every non-text element shall be provided (e.g. via "alt", "longdesc", or in element content.
The text in the ALT text should be meaningful in the context of the Web page. Specifically:
If you want to provide a tooltip for visual browsers, use the TITLE tag in addition to the ALT tag since it is supported in more browsers. For example:
Length of Alt Tag - There is no official length restriction of ALT tags, but many experts recommend 125 characters or under because of restrictions within the JAWS screen reader. Many versions of JAWS break up longer text tracts into blocks of 125 characters, which can be confusing.
For images which are especially complex, such as a chart, equation or diagram, a link to an extended text caption should also be included.
Images which are used as buttons or labels should use fonts which are readable to a large segment of the audience (probably 12 pixels/points or larger).
STYLE TAG - In some cases you can replace custom tool lines and decorative graphics with styled HR or DIV tags in which you change background colors and specify background images. See CSS style sheet tutorials for more details.
The ALT tag adds a text description to a Web image. If viewers cannot see an image, then the description is displayed. This benefits users of screen readers, users of Palm Pilots viewing a Web site and users on a low-bandwidth connection where images are slow to download.
The ALT tag is included within the image tag. You can also include the TITLE and LONGSDESC attributes as well since this is also recognized by some devices.
NOTE: The ALT tag is limited to 50 characters. If more information is needed, then use one of the long description strategies.
<img src="imageXXX.gif" alt="Description" title="Description">
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
<img src="K12Title.gif" alt="Fake Child Education
Site Label"> </p>
<p> <img src="K12MathProblems.gif" alt="Math Problems" <br>
...
![]()
![]()
Screen reader says "Image" five times.
Some browsers, particular Internet Explorer for Windows, may display ALT text as a visible tooltip. Therefore, some Web sites use this feature to include supplemental information within visual browsers.
However, this technique should be avoided since other browsers do not show ALT text as tooltips. In addition, this interferes with the basic function of the ALT tag which is to provide a short text equivalent of an image. All navigational elements should be indicated by textual elements which can be accessed by a visual browser.
Use the TITLE Tag instead for tooltips since they are supported in all browsers. See example below.
HTML Code
<img src="bluemark.gif" alt="Penn State University" title="Founded in 1855" >
Example (Hold cursor over image to test tooltip)

For images used as navigational elements, the ALT Text can typically just state where the link is going. Stating a full description of the image is redundant in most cases.
This code is meant to implement the Penn State logo as a link to the homepage.
<a href="http://www.psu.edu" > <img src="psulogo.gif" alt="Penn
State Logo"> </a>
A screen reader would say "Penn State Logo" but would not indicate that this link goes to the Penn State homepage.
This code is a more accessible implementation of the Penn State logo as a link to the homepage.
<a href="http://www.psu.edu"> <img src="psulogo.gif" alt="Penn
State Home Page"> </a>
The screen reader would say "Penn State Homepage" which indicates where the link is going.
If more information about the image or its design is desired, then a D link or LONGDESC tag can be provided.
Some images such as invisible pixels or custom tool lines are used solely for layout purposes and provide no content. The alt tag for these should be set to a blank space or nothing <alt= "" > . This causes the screen reader to ignore the image altogether.
For example we will use a sample image of a rainbow toolbar, followed by some accessible and inaccessible code examples
![]()
<img src="examples/spectrumtooltip.gif" alt="" >
Screen Reader Says nothing and goes on to the next section
![]()
<img src="examples/spectrumtooltip.gif" alt="A
Rainbow line used as toolbar" >
Screen Reader says "Rainbow line as a toolbar". If you have eighteen rainbow toolbars, the screen reader would repeat this eighteen times. This is irrelevant to a screen reader user and increases reading time.
![]()
<img src="examples/spectrumtooltip.gif" >
With no ALT tag, Screen Reader Says "Image" which leaves users wondering if they are missing anything important.
NOTE: Alt text combined with transparent image can be used to provide special information just to users on screen readers such as a way to skip navigation.
If an image is embedded within a Web page in which already includes an extended description of the image, then the ALT tag can just provide a summary of the image, not a full description.
Below is an image of a saturated fat molecule with 18 carbon molecules. Notice that the single bonds between elements make the carbon chain relatively straight.

<...alt="saturated fat molecule" >
<...alt="image of straight saturated fat with 18 carbons" >
NOTE: This kind of description would be useful if the context is needed to understand the content, although a better strategy may be to include the text in the Web page itself or to link to a longer description as discussed in the next section.
In some cases, it may be necessary to add a link to an extended description of an image, especially for cases where images are used to convey significant content. There are several ways this can be accomplished - including a LONGDESC tag, a "D-link" or just a caption which links to the long description. See below for examples
If the information is critical, then an overt caption link may be the best solution. This provides the clearest indication to the most users that a longer description is available.

View Extended Text Description
Some experts advocate the use of a "D-link" to signal the presence of an extended text description. However, some users may not be aware of the convention. This is best used to provide supplemental information.
This is a hidden attribute which is recognized by some, but not all, screen readers. This may be best for providing extra detail which enhances content, but is not critical to it.

<img src="examples/runningfootbalplayer.jpg" alt="photo
of football player" width="102" height="154" longdesc="dfootball.html" >
This is a publicity photo of a Penn State football player running with the football in a crowded football stadium on a sunny day.
ASCII art, or the use of punctuation and letter symbols to draw out an image will be inaccessible for screen readers since they will read each symbol aloud. Images supplemented with ALT text would be more accessible.
If an ASCII art image is truly needed in a Web page, then creating it in Photoshop or other photo editor may be a better alternative.
NOTE: If you include complex ASCII art in an e-mail signature, then it should be placed at the bottom after your contact information.

This is a GIF file, but if it were true ASCII art, a screen reader would say:
left parenthesis quote acute accent dash quote backslash quote right parenthesis...
Foreign language support is still relatively incomplete for screen readers, but here are some things that can be done. Screen readers programmed in a non-English language may be able to switch to English easier than a screen reader designed for a U.S. audience can switch to non-English.
Use Unicode encoding whenever possible.
Use the LANG tag to mark words or passages of text in another language. This works for major languages only.
Consider placing long passages of a non-English text on its own page with language identifier (in English and in the native language) and link to siwtch language page near the top of each page.
Use a textual indication (visual or hidden) to indicate when a foreign language word or passage is coming.
If developing a completely or partially non-English Web page, make
sure it is properly encoded. See the Penn
State Computing with Accents page for more details.
Note: Some screen readers may need plug-ins for some languages like Chinese
and Russian (if available).
For some lesser taught languages such as Swahili or Old Irish, true accessibility can only be accomplished via an audio file because screen readers may not be able to read the words correctly.
In most cases, non-English text (including special characters such as ©, †) should be inserted as is into a document encoded in Unicode. The Penn State Computing with Accents and Symbols page has information about individual languages, accent codes and math symbol codes.
If Unicode support is not feasible, then you can use entity codes such as è for
French è or £ for the British pound sign (£). See the Penn State Computing with Accents Entity Codes page for more information.
The LANG attribute is designed to signal screen readers to switch to another language. It is currently supported by only a few screen readers and only for the major languages, but could be more widely supported in the future.
NOTE: You must also declare the encoding in addition to the language. The language and its script are independent.
The official W3C recommendation is to declare the primary language for each Web page with a <...lang => attribute in the <html> tag. Codes are ISO-639 Language codes.
<html lang="en-US">
...
</html>
<html lang="en-GB">
...
</html>
Screen readers supporting this tag could switch to a British accent.
<html lang="fr">
...
</html>
Screen readers supporting this tag could switch to a French accent.
If you switch languages within one page, you can embed the LANG attribute in other tags such as a P, TD, SPAN, DIV and other tags. For example
This sentence is in default American English.
This sentence will be read with a British accent.
Esta frase es en español. (Spanish)
Cette phrase est en français. (French)
Mae'r frawddeg hon yn cymraeg. (Welsh - Not Supported)
<p> This sentence is in English. </p>
<p lang="en-GB"> This sentence will be read with a British accent </p>
<p lang="es"> Esta frase es en español. </p> (Spanish)
<p lang="fr"> Cette phrase est en français </p> (French)
<p lang="cy"> Mae'r frawddeg hon yn Cymraeg. </p> (Welsh,
not supported) </p>
ISO-639 language codes for languages taught at Penn State. See the Library of Congress and a complete list of ISO-639 Language Codes for more information.
These languages are supported by U.S. Version Homepage Reader 3 and Jaws 5.0:
Screen readers or screen reader plug-ins designed for specific languages may also be available and may provide support for additional language tags, although not all languages may have an available plug-in. Some additional language tags include:
See the Library of Congress Language Code Page for a complete list of codes.
In addition to using the LANG tag, you can also include an indication in the text so that users of older screen readers can manually with languages. This can be done by spelling out the beginning/end of a passage in the text (preferably in an H1,H2 tag or as part of a set of links) or in the alt tag of an invisible graphic.
Translations of U.N. Universal Declaration of Human Rights
Spanish | French ... (Menu provides quick list of where non-English passages are)
Artículo 1
Todos los seres humanos nacen libres e iguales en dignidad
y derechos y, dotados como están de razón y conciencia, deben
comportarse fraternalmente
los unos con los otros.
Begin Spanish Artículo 1
Todos los seres humanos nacen libres e iguales en dignidad y derechos y,
dotados como están de razón y conciencia, deben comportarse fraternalmente
los unos con los otros. End Spanish.
<img src="transpixel.gif" alt="Begin Spanish">
If JAWS is unable to recognize a particular symbol in a document, you can append a Symbol File (.sbl) file which assigns plain text values to a Unicode character. For example the cube root symbol ∛ (Unicode character code number U+221B) can be set as "U+221B = cube root"
Links to information and text files for math and phonetics are at Getting JAWS 6.1 to recognize "exotic" Unicode symbols
Note: This applies to JAWS 6.1 and later.
These links are primarily about accessbility policy in other countries, but there may be technical information provided. Organizations supporting visually impaired persons may also be another path to explore.
Write links that make sense out of context. Use descriptive link text detailing the destination; not just "click here" or other similar phrases. Link phrases rather than single words so users with limited motor control will not have difficulty hitting links.
Click here for instructions on how to use the new Penn State web tool.
Instructions for the new Penn State web tool are available online.
Note: Some search engines such as Google give higher rankings to sites which use "context-rich" text links.
Maintain standard that text links are underlined and are a different color value (lighter or darker) than main text. This will help color-blind users find links more easily and is good usability practice.
Insert "Top of Page" links after each section in longer documents to reduce the need to scroll for motion impaired users. These links should be formatted differently from other links so users know they are page internal.
Avoid links opening in a new window unless absolutely necessary. New windows are disorienting for screen reader users and users of visual browsers (because the back button becomes "disabled.") Be aware also that some users of visual browsers disable pop-up windows to avoid advertising.
If you use the TARGET option to open a new window, include a textual indication (e.g. External Resources (New Window)) so screen readers are aware of the new window.
If you use Javascript Links, such as those to open up pop-up windows, make sure they are coded to be accessible by screen readers; many Javascript links are unusable in screen readers.
Text links are generally preferred to image links or image maps because text remains crisp at large sizes. However, if these are used, then an ALT or NAME attribute should be specified for each link. See the Image Maps and Image pages or more details on creating accessible links with images.
If your Web site uses a block of navigational links on each page, make sure a Skip Navigation strategy has been implemented so screen readers can avoid speaking these links on each page.
SECTION 508 - A method shall be provided that permits users to skip repetitive navigation links or very long lists of link
If you include a link to a Text Only page, place the link at the beginning of the page so that users can access it without reading through the entire page.
Whenever possible, break up long lists of links into categorized blocks headed by H tags, such as alphabetic headers or subtopics. Otherwise, you may have to implement a Skip Navigation strategy.
A row of links should be separated by a vertical bar (e.g. Link 1 | Link 2) or some other character. This helps users of older screen readers to identify distinct links.
Maintain a consistent set of navigational links on every page of your site, even if you must implement a skip navigation link.
A breadcrumb trail or listing of a page hierarchy placed below the title bar, can help users keep track of their location within a complex site. For example:
Creating Accessible Web sites Home > Details by Technology & Tag > Links
If you are using nested lists (a list within a list), then use a different numbering system in the secondary levels than in the top level. This helps users distinguish between different levels. See the Nested List example below for details.
When nesting lists, use different numbering/lettering scheme at each level, so screen readers can distinguish among them. This is also advisable from a usability perspective. See examples below.
University Park Colleges and Departments
University Park Colleges and Departments
1. Agricultural Sciences 1. Agricultural and Biological Engineering...2. Arts and Architecture 1. Architecture and Landscape Architecture 1. Department of Landscape Architecture.
University Park Colleges and Departments
University Park Colleges and Departments
1. Agricultural Sciences A. Agricultural and Biological Engineering...2. Arts and Architecture A. Architecture and Landscape Architecture i. Department of Landscape Architecture.
You can replace bullets with custom bullet images, using cascading style sheet attribute – list-style-image:url(path)
Penn State's two colors are:
ol.paw {list-style-image:url(examples/paw.gif)}
<ol class="paw">
<li>Blue</li>
<li>White</li>
</ul>
The list-style-image attribute replaces a bullet with the image.
Penn State's two colors are:
Item 1 Blue
Item 2
White
Provide a label for each formula or equation whether the equation is an image or text.
Whenever input math equations as text, especially if they are one one line. The visuals will be generally be of higher quality, especially for low vision users. Symbols should be inputted in Unicode encoding whenever possible.
If a screen reader cannot interpret a symbol, then you may be able to append a pronunciation file (particularly in Jaws 6.1 +).
If a pronunciation file cannot be appended, then use hidden text (e.g. ALT text of an invisible graphic) to spell out the formula replacing symbols like ≠ with words like "not equals".
Provide ALT tag for any images used spelling out the formula. If the description is over 255 chracters, then link to an extended text description
PDF files or Word Files can be beneficial, but make sure the content is accessible to screen readers.
As mentioned in the recommendations for Images, complex images may require a link to a longer text description depending on how critical it is to the content. Here is a line chart for tracking preferred computer platform over time.
ni sinθi = nr sinθr![]()
n <sub>i</sub> sin <font face="Symbol">q</font>i = n <sub>r </sub> sinθ <sub>r</sub>
This code includes the SUB subscript tag, changes the font to "Symbol" for one theta and uses the θ entity code (better) for the other instance.
Knee sinqui equals ennar sin question-mark R.
The "question-mark" indicates the screen reader was not able to decipher the θ entity code.
Snell's Equation- ni sinθi = nr sinθr![]()
Extended Description - N sub I times sine theta sub I equals N sub R times sine theta sub R.
The label "Snell's Equation" gives a user of a screen reader an idea of the content is and an extended text description gives the full details. An extended description can be linked or incorporated into the text as needed.
In most cases, non-English text (including special characters such as ©, †) should be inserted as is into a document encoded in Unicode. The Penn State Computing with Accents and Symbols page has information about math symbol codes for HTML
Unfortunately the Insert Symbol tool in Word 2003 (Win)/2008 (Mac) does not insert the correct Unicode value for a math symbol. If the text is migrating to a Web platform or a user reports problems, then use the Windows Character Map or the Mac Character Palette to insert the symbols. Windows users should switch to the Arial Unicode MS font.
If JAWS is unable to recognize a particular symbol in a document, you can append a Symbol File (.sbl) file which assigns plain text values to a Unicode character. For example the cube root symbol ∛ (Unicode character code number U+221B) can be set as "U+221B = cube root"
Links to information and text files for math and phonetics are at Getting JAWS 6.1 to recognize "exotic" Unicode symbols
Note: This applies to JAWS 6.1 and later.
When an image is used, there should be a label for each equation and the ALT tag should specify how to read the symbols. The safest option is to spell out the symbols as words (e.g. ± as " plus or minus "). If the ALT tag is over 255 characters, then you can link to an extended text description.
Go to the example below for an accessible use of an image to represent a formula.
<img src=quatratic.gif alt ="X equals negative b, plus or minus the square root of B squared minus four times A times C all divided by two times A">
These links are primarily about accessbility policy in other countries, but there may be technical information provided. Organizations supporting visually impaired persons may also be another path to explore.
Math ML is an XML platform designed to deliver equations as text. Equation Editors such as MathType can convert equations to MathML, however there are some issues to consider.
Unfortunately, as of April 2008, there are two incompatible MathML flavors in use – one for Internet Explorer and the official W3C MathML version used by Firefox and Opera. There is no simple way to used the same code on all three browsers. A common solution is to use scripting to present one of two versions based on the user's browser... or to avoid MathML for now.
Jaws can recognize the Internet Explorer version of the MathML if the MathPlayer plugin is installed (but no Mac viewer could properly view that page). If a user needs MathML, a page with equations in one of the two flavors a page listing the equations can be developed if an editor which can export MathML is used.
If browsers evolve to use just one version of MathML, developers may be able to replace images with MathML in a future revision.
Make sure your audience has ready access to Microsoft Office packages, and for the version you are using. Although these are readily available at Penn State, they may not be available outside of Penn State; another option like PDF or pure HTML may be better in these situations.
SECTION 508 - When a web page requires that an applet, plug-in or other application be present on the client system to interpret page content, the page must provide a link to a plug-in or applet that complies with § 1194.21(a) through (l).
Use the built in Header style tags (e.g. Header 1, Header 2, Header 3) in Word as you would H1,H2,H3 tags in an HTML file. These headers may be preserved and interpreted in screen readers when files are converted to PDF or other formats. The Format » Style menu allows users to adjust the appearance of these tags in a Word file.
Provide labels and captions for all images and charts.
In some HTML editors like Dreamweaver 2004, Header styles are converted to H tags when the text from Word is copied and pasted into Dreamweaver.
Note: Avoid "Paste as Formatted" in Dreamweaver, since it will copy extra style tags.
Avoid using the "Save as Web file" option to convert Word and Excel files to HTML. Even in filtered mode, the code tends to be very clunky and may be inaccessible depending on how the original file was formatted (see inaccessible example below). It's better to convert the file into a PDF or cut and paste raw text into an HTML editor andreformat the content more accessibly.
Always add labels to images and include extended text descriptions for graphics and charts as needed. Audio and video files should include captions or transcripts.
Use a color scheme which provides enough contrast of text versus background, yet is not too overpowering. See the color page for more information.
Use sans-serif fonts which are designed for both projectors and online viewing.
Give a title to every slide and make sure the title is entered into the designated title area (usually at the top). This generates a table of contents for the screen reader (in both Power Point and in the HTML version).
If you use the Chart Wizard, make sure the color formatting is accessible. See details below in the Excel section.
Screen readers may have difficulty processing Power Point files. If Power Point files are posted online, use the Save as Web Page option. Users of Office for Windows can also add ALT tags for images. Mac Office users should make sure all images are described in the text (i.e. a caption) in the slides.
Note: You can also purchase a plug in to audit the accessibility of the output file (Windows only).
If you convert PowerPoint files to an HTML file on a Macintosh, then you will need to manually insert the ALT text for all images. PowerPoint files are published in its own folder and could be edited by an HTML editor such as Dreamweaver.
If you use Adone Presenter with a PowerPoint file to create a recorded presentation, make sure that images are tagged and minimize transitions. Text transcriptions are also necessary for audio content. See information at http://www.connectusers.com/tutorials/2007/09/accessible/index.php
Avoid converting files from Excel to HTML since inaccessible tagging may be added. See the Word HTML for a discussion of similar issues. It may be better to upload the Excel file itself or convert it into a tab delimited or comma delimited file.
Make sure headers and rows are labeled as in a data table.
The Windows version of Microsoft Office allows you to insert ALT tags to inserted images which can be read by a screen reader. If these files are converted to HTML, the ALT tag is generally preserved.
Note: This tool is not available in Office 2004 or Office 2008 for Macintosh.
In Microsoft Office 2007, the Alt Tag tool is under the Picture Size options. In Office 2003, it is under the Format Picture options.

In Office 2003, it is under the Format Picture options.

Although Microsoft products include a function to convert content to HTML, the implementation is not regarded as standards compliant. Below is a sample of what codes are generated by the Save as Web file option in Microsoft Word.
If need convert to HTML, you can look for the Filtered Web option (available in Office 2007 for Windows only) or you can purchase a plug in to audit the accessibility of the output file (Windows only).
This is unformatted text.
<p>This is unformatted text</p>
Font was fixed to 12 point, Times New Roman
This is unformatted normal text.
<p class=MsoNormal>This is unformatted text</p>
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin-top:0in;
margin-right:0in;
margin-bottom:5.0pt;
margin-left:0in;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-ascii-font-family:Palatino;
mso-fareast-font-family:Cambria;
mso-hansi-font-family:Palatino;
mso-bidi-font-family:"Times New Roman";}
Note: Some text editors such as Global Writer export HTML with less embedded formatting.
Styles use fixed font sizes, not relative font sizes. Zoom will be disabled in Internet Explorer 6 and earlier versions.
Will probably fix the font to Times New Roman which is designed for print, not for computer monitors.
Style sheets are embedded and are time consuming to remove manually. In fact, all Word styles in your template are exported even if they are not used in the original document.
Word HTML allows designers to specify for unusual fonts or symbols which may not be available on all computers.
If Smart Quotes are turned on, then they will be converted to a Unicode numeric character or left intact. Older browsers may not be able to decipher these symbols.
Older screen readers had trouble reading tables, but this is not a problem for newer screen readers. See the tips section for information on how to make formatting tables more accessible
Layouts with multicolumns are accessible to modern screen readers, but you must ensure that the flow of the text is coherent.
You can use TABLEs for layout, but note that cells are read left to right, top to bottom. You do not need to include data table accessibility tags such as TH and SCOPE.
CSS formatting is often preferred, but you must ensure that positioning is not used to place elements out of order so that text becomes incoherent when CSS is disabled.
Older screen readers used to not recognize columns (whether they were in TABLEs or formatted with CSS). Instead they would read the text on the page left to right as if it were linear, causing text to be read out of order
For this reason, some accessibility experts in the past strongly discouraged the use of multiple column layouts, then mostly implemented with formatting tables.
NOTE: Some screen reader software packages, such as JAWS, allows users to enter tables reading mode, but some users may not be aware that this feature exists.
For accessessibility, the difference is actually minimal. The main advantage of using CSS over TABLEs is that there is usually less code, making maintenance much easier.
However, you can cause accessibility glitches with CSS if the positioning is not properly implemented. There are also inconsitencies in how CSS is rendered across browsers.
If you cannot find a CSS solution wthich
Some experts recommend using CSS styled DIV to set up layouts, but there are a number of serious pitfalls to be wary of. If in doubt, a layout table may be a better solution in the short term. It is not currently a part of Section 508 policy that all formatting tables be eliminated, just that they be accessible.
Make sure your text makes sense when read cell-by-cell, row-by-row, starting from the upper left and ending in the lower right. This is the default reading order of table cells for screen readers.
If one of the columns is used for navigation, implement a Skip Navigation strategy so that users can navigate into content and skip repeating a set of site navigational links.
SECTION 508 - A method shall be provided that permits users to skip repetitive navigation links.
When using a table for formatting, you do not need to use the TH, SCOPE, CAPTION tags. These are only used for data tables.
You can use the SUMMARY tag to indicate to screen reader users that the table is being used for layout purposes.
Avoid using tables to create "textbars". CSS has more formatting options for this and generates cleaner code.
Avoid nesting tables for visual effect. Screen readers read out the number of rows and cells for each table, so the fewer tables, the better.
Whenever possible, set column and table widths to relative sizes (e.g.
width="25%") rather than absolute sizes (e.g. width="200").
This way, tables can be adjusted to fit the screen more appropriately depending
on monitor resolution
or zoomed text.
NOTE: Some users deliberately set their monitors to a lower resolution
(e.g. 800 x 1200 or 640 x 400) as a way to increase text size in general.
Some formatting tables can be avoided by using cascading style sheets to specify background colors and borders for elements such as an H1 tag or a DIV class.
As mentioned above, the default reading order of table cells is left to right, top to bottom as shown in the example table below.
| Cell 1 | Cell 2 | Cell 3 |
| Cell 4 | Cell 5 | Cell 6 |
| Cell 7 | Cell 8 | Cell 9 |
It's important that, when using tables for formatting, the text be coherent when read in cell table order. See the following example for details.
Here's a table with "3 2 1 Ignition" going from the lower left to the upper right.
| Ignition! | |||
| 1 | |||
| 2 | |||
| 3 |
Users of visual browsers would process the text as "3 2 1 Ignition", but because of how the table is laid out, a screen reader would say "Ignition 1 2 3."
See the CSS page for options relating to multiple column layout and links to tutorials.
The Divs Resembling Tables shows some options for adding borders and background colors with more control than in HTML Tables. The Inaccessble CSS section shows how CSS can be used to position text out of logical order.
PDF Files are a convenient way to deliver print documents online, but should generally not be used a replacement for an HTML Web environment.
- PDF documents are usually formatted to printed vertically, but computer monitors are generally horizontal. The mismatch causes users to scroll more often than in an HTML site which can be difficult for users with mobility impairments.
- Very large files can be slower to download than an HTML page.
- PDFs consiting of scanned pages is really a series of images, and inaccessible to a screen reader. Only an OCR (optical character reader) scanner can can save a scanned document as a text file.
- The interface between a browser and an PDF file is not consistent across platforms and browsers.
- The transition between a PDF document and an external Web site is not as seamless as between HTML documents.
- PDF files may need to be tagged in order to be considered accessible to screen readers.
- Additional training and plug-ins for making PDF forms accessible is required in addition to the training needed to make an HTML form accessible.
- PDF interfaces can be slower to zoom than an HTML version, particularly for complex documents such as a street map.
However, there are instances when a PDF file is the best way to deliver material.
- Post print manuals and print forms online. These would include blank tax forms, how-to instructions for designed print, blank application forms, contracts, long articles or long users manuals.
- Post material using technical fonts in specialized fields such as in music, foreign languages, mathematics, and so forth.
- Deliver high resolution images in a relatively small file format.
In order to make the use of PDF files more accessible, consider these recommendations.
Always provide a link to the page to download Adobe Acrobat Reader.
SECTION 508 - When a web page requires that an applet, plug-in or other application be present on the client system to interpret page content, the page must provide a link to a plug-in or applet that complies with § 1194.21(a) through (l).
Convert files to be compatible the latest versions of Acrobat Reader since more accessibility options are available. Encourage users to download the latest versions of Acrobat Reader.
Note when a link goes to a PDF file (e.g. "User's Manual (PDF)"). This gives notice to all users that a link will be opening a PDF file, not going to another Web page.
Create files compliant with more recent versions of Acrobat Reader and use "tagging" to make sure all images have the equivalent of ALT tags. These tags can be accessed by some screen readers. Instructions are available from Adobe Acrobat Accessibility. See the Section 508 paragraph from the previous item.
Create a PDF file directly from a Word or text file whenever possible to enhance accessibility because the content will be stored as text and is more likely to be accessible by a screen reader.
If you use Microsoft Word, use the Header 1, Header 2, Header 3 styles where HTML would use H1, H2, H3. When these documents are converted to PDF, these styles will be parsed as headers.
Recent versions of Adobe InDesign (Mac and Windows) supports tagging when PDF files are created (or exported). Recent versions of Micorsoft Office for Windows also includes some additional PDF tagging features.
If you are scanning in material which is mostly text, scan the material in with an O.C.R. optical character scanner which converts a scanned image of a text to a text file. If files are scanned with a regular scanner, the PDF file will consist of a series of inaccessible images.
Note: Scanning text with an OCR scanner will also make the transition of any text to HTML easier.
Avoid converting text with multiple columns into PDF This causes addition scrolling up and down as you read each column making it harder to process for people with motion impairments.
Be aware that some security measures on PDF files may disable screen reader access. Be prepared to provide alternative access to visually impaired users.
When in doubt, provide an alternative text-only or HTML only format which is more likely to be accessible.
Read more about how to optimize PDF files for accessibility. Some resources include the following:
Pop-up windows can add functionality to a Web site, but must accessible scripting. Further, the site should still be functional even ifJavaScript is disabled. In addition, many users with visual browsers use pop up blockers
in order to avoid pop-up advertising.JavaScript pop-up windows should only only be used if they add a significant advantage in functionality.
SECTION 508 - When pages utilize scripting languages to display content, or to create interface elements, the information provided by the script shall be identified with functional text that can be read by assistive technology.
If you do open a new window or new tab (with either the TARGET attribute or a script), then add a label that the link will open a new window. Many users (on screen readers and visual browsers) are confused when they do not realize a new window is open and the back button ceases to function.
Accessify.com provides a tutorial on creating an accessible pop-up window. However, it should be tested before using on a Penn State Web site.
Provide a <noscript> alternative which uses a plain link to direct users with Javascript disabled to the appropriate information.
Provide both a plain link and a pop-up link.
Avoid disabling the scroll bars and resizing options; readers with low vision may need to resize windows to accommodate larger text.
These Websites provide advanced tips for implementing Javascript pop-up windows in an accessible fashion. Testing on multiple platforms is recommended.
When using redirects or forms requiring a timed response, make sure adequate response time is given for mobility impaired users, users with screen readers and readers with cognitive impairments; all these audiences require extra time to process instructions.
SECTION 508 - A method shall be provided that permits users to skip repetitive navigation links or very long lists of links.
If you need to implement a permanent redirect for URL it is recommended that you use the "HTTP status code 301" on a server rather than the <meta http-type="refresh" > tag. The 301 code is more standard, but can only be implemented by a server administrator.
If you need to redirect users to a new Web address, then a static page with a link is recommended over a page with a timed redirect.
If your Web site is set to automatically log out a user after a certain period of inactivity, make sure the Web site gives a warning with a reasonable window of opportunity for the user to click to stay connected.
Avoid using redirects to circumvent navigation buttons, such as a redirect which returns a user to the same page when the Back button is clicked. It is generally considered inaccessible to disable standard browser functions unless absolutely necessary.
Don't Disable the Back Button. It is possible to code your Web page so that when users click on the Back button, they are redirected back to the same page instead of going to the previous Web page. This is generally considered both non-usable and non-accessible because it interferes with the standard protocols of a browser and could cause confusion for many users.
A permanent redirect which directs users from an alternate Web address to a the real Web address can be automated to be instantaneous. Since this redirect path will be maintained permanently and is meant to be transparent to users, there is no need to provide any time lag.
An example of an permanent redirect would be a Web address like angel.psu.edu for the ANGEL Course Management system which automatically redirects users to the true ANGEL Web address which is cms.psu.edu.
Click on http://angel.psu.edu to see the redirect in action.
A temporary redirect is one in which is implemented after a Web site has changed its permanent address. The purpose of this kind of redirect is to inform users that an address is changing and that bookmarks and links should be updated.
Since information about the redirect needs to be read and digested by users, an untimed static page with the new U.R.L. is recommended over a timed redirect. See example below.
This page announces the new U.R.L. as a link instead of doing a timed redirect.
The TLT Cyberplagerism Web site has been moved to:
http://tlt.its.psu.edu/plagiarism.
Please visit the new U.R.L. to view the updated Web page.
Links to content and other functionality should be available even if JavaScript is disabled. A <noscript > alternative text-only navigational system or text links may add accessibility.
SECTION 508 - When pages utilize scripting languages to display content, or to create interface elements, the information provided by the script shall be identified with functional text that can be read by assistive technology.
If scripts are used to generate HTML code for dynamic pages, then the generated code should comply with accessibility guidelines.
If a script relies on a user clicking a mouse, then make sure to include event handlers that can also allow a user to use the keyboard to tab to the tool.
Avoid using arbitrary database numbers for ALT tags, TITLE tags, FRAME tags and other text-only accessibility devices.
It is recommended that a hidden "Skip to Content" link be included before the site's main navigation, but this one link is usually sufficient.
Users with screenreaders can skip between major headers and subheaders which are tagged H2,H3,H4.
Having a consistent set of links at the top or left side of a document is beneficial for both usability and for people with some mobility impairments as they may not need to move the mouse as far to reach the navigation.
But for users with screen readers, hearing the same list of links at the beginning of each page is time consuming and potentially irritating. Therefore a Skip Navigation strategy should be included to allow users of screen readers to skip over a block of navigational links.
SECTION 508 - A method shall be provided that permits users to skip repetitive navigation links or very long lists of links.
In the first method, an invisible pixel graphic is placed before the navigation with the ALT tag reading "Skip to Content." This is turned into a link which goes to a page-internal link further down the page. Note that the image BORDER should be set to "0" in order to keep the image hidden from visual browsers.
[A Bunch of navigation buttons/tabs]
In visual browsers, the hidden graphic is marked by a blue dot before the "[A Bunch...]" because the border was not set to 0.
<a href="#skip">
<img src="transparent-pixel.gif" alt="Skip Content
" border="0" >
</a >
<!-- DIV tags are used to break the pageinto sections. No formatting is visible unless CSS formatting is applied-->
<div id="navigation">[A Bunch of navigation buttons/tabs]</div>
<div id="content">
<a name="skip" > </a > [Content Starts Here]
</div>
The Web AIM Skip Navigation Page lists some alternatives including making the Skip to Content link visible when a user tabs to it on a keyboard. This allows both motion impaired users and screen reader users to take advantage of it.
A table can be classified as a data table whenever you need to specify a row or column with header information about that row/column. If no informational header is needed, then it is a formatting table.
When using tables to present data, use the use the TH and SCOPE tags to identify which cells are row and column headers. This helps the screen reader organize the data to be read in a logical order and identify data types.
SECTION 508 - Row and column headers shall be identified for data tables.
Avoid spanned rows and columns in data tables, especially as headers. Many screen readers cannot properly parse these.
In general, data cells should take up one row only; this helps older screen readers read the table coherently.
Make sure any abbreviations and acronyms used in the tables are accessible.
For complex data tables, you must use newer accessibility tags such as SCOPE, CAPTION, SUMMARY, ABBR, ACRONYM, TFOOT and THEAD as needed to further organize information in complex data tables.
SECTION 508 - Markup shall be used to associate data cells and header cells for data tables that have two or more logical levels of row or column headers.
Given the complexity of this tag set however, you may want to consider replacing one complex table with a series of linked simple tables. Screen reader access is generally more straightforward and code maintenance may be simpler as well.
See the Complex Table Tags section for more details.
A simple table here means means that there is a maximum of one row category and one column category. Use of the TH and SCOPE tags combined with CAPTION and SUMMARY tags will provide sufficient information for most newer screen readers to process simple tables.
The TH tag is used to designate certain cells as row and column headers. Visually, the TH tag changes the text formatting to bold face and center in most browsers.
The SCOPE attribute in the TH tag is used to further define whether the header is a row ( <th scope="col"> ) or a column ( <th scope="row"> ). Designating the SCOPE changes the order in which cells are read out in a screen reader from the default left-to-right, top to bottom order. This code is sufficient for most screen readers to process simple tables (one header row and one header column), but additional tags are needed for more complex tables. See below for details.
| Color | Spanish | French | Irish | Welsh |
|---|---|---|---|---|
| Black | negro | noir | dubh | du |
| White | blanco | blanc | bán | gwyn |
| Red | rojo | rouge | ruadh | coch |
| Blue | azul | bleu | gorm | glas |
| Green | verde | vert | glas | gwyrdd |
| Yellow | amarillo | jaune | buí | melyn |
Note: Gray cells with bold, centered text are TH. The gray background is from a style sheet.
Because this table contains TH tags with the proper SCOPE definitions, some screen readers will read this table as follows.
Color: Black, Spanish: negro, French: noir, Irish: dubh, Welsh: du.
Color: White, Spanish: blanco, French: blanc, Irish: bán, Welsh: gwyn.
Color: Red, Spanish: rojo, French: rouge, Irish: ruadh, Welsh: coch...
<table>
<caption>
Donuts consumed by each staff member
at Monday Meeting
</caption>
<tr>
<th scope="col"> Color </th>
<th scope="col"> Spanish </th>
<th scope="col"> French </th>
<th scope="col"> Irish </th>
<th scope="col"> Welsh </th>
</tr>
<tr>
<th scope="row"> Black </th>
<td> negro </td>
<td> noir </td>
<td> dubh </td>
<td> du </td>
</tr>
<tr>
<th scope="row"> White </th>
<td> blanco </td>
<td> blanc </td>
<td> bán </td>
<td> gwyn </td>
</tr>
</table>
The data would be read as a list with no identifiers. You would have to memorize which word went with a particular language.
Black, negro, noir, dubh, du.
White, blanco, blanc, bán, gwyn.
Red, rojo, rouge, ruadh, coch...
The CAPTION tag can be used to display a title for the table. It can be visually formatted and be positioned above or below the table as needed.
| Cell 1 | Cell 2 | Cell 3 |
<table>
<caption>
Table Showing Screen Reader Order
</caption>
<tr>
<td> Cell 1 </td>
<td> Cell 2 </td>
<td> Cell 3 </td>
</tr>
</table>
The SUMMARY attribute is placed within the TABLE tag and is read by the screen reader only. It can be used to clarify the organization of a table or provide a quick summary of results. It should not repeat CAPTION text.
| Cell 1 | Cell 2 | Cell 3 |
<table summary="Table cells are read left to right,
top to bottom. ">
<caption>
Table Showing Screen Reader Order
</caption>
<tr>
<td> Cell 1 </td>
<td> Cell 2 </td>
<td> Cell 3 </td>
</tr>
</table>
When possible, data cells should take up one row so that screen readers which do not process tables well will be better able to read the content.
In some cases, text can be forced onto one line by inserting a non-breaking space code ( ) between words. For example
I can make sure this is one line.
I can make sure this is one line
It is possible to structure complex tables to be accessible via the AXIS, HEADER, THEAD, TBODY and similar tags, but it is very tricky to implement. In addition, standards are in flux, so recommendations may vary. Below are some tutorials which explain how some of these functions work.
- Web AIM Table Tutorial - ID and HEADER tags, but recommends simple tables only
- Semantic XHTML Table Markup - HEADER, ID and COLGROUP
- W3C Recommended Tags - Some may or may not work in screen readers.
One option may be to break up a complex table into a series of linked simple tables which can be more easily maintained. These tables may also be more usable for the general audience.