NC State's Web Accessibility Regulations
North Carolina State University is required to provide reasonable access to its educational services, programs and activities in accordance with Section 504 of the Rehabilitation Act of 1973, the Americans with Disabilities Act (ADA) of 1990, and North Carolina state law (N.C. Gen. Stat. § 168A-7). Accordingly, official NC State web pages and online instructional material should be accessible to disabled persons where possible, or a reasonable alternative accommodation should be offered.
Non-compliance with the Regulations
If the NC State Web Developer fails to provide a response to the Information Technology Division's inquiry or does not address accessibility problems in a timely fashion, the Provost and Executive Vice Chancellor, in consultation with an accessibility compliance team if necessary, may direct the removal of non-exempt inaccessible Web content from service.
Making Web Accessibility Easy
While the Regulation requires that web pages meet the technical Section 508 standards, they are minimum requirements to make the pages become "technically" accessible and may not necessarily be functionally usable by people with disabilities. To be usable, websites must provide people with disabilities similar user-experiences as their peers.
Below you will find a list of best practices that will allow your site to be usable by everyone regardless of their individual functional capabilities. When applied to web, these best practices integrate well with assistive technology (AT) used by a person with a disability and provide equivalent access to all content including audio and visual material.
Layout and Structure
- Separate presentation layer from the structure. When possible use Cascading Style Sheets (CSS) to control the visual appearance of a page.
- Do not use structural elements for presentation and layout. For example using heading <h> tag to enhance text; list
- tag to indent text; text area input <textarea> element for text inset.
- Use CSS and <div>< tag or <iframe> to create a text inset.
- Use <title> element in the <head> section of the page to identify the contents of a page. Browsers expose this information to assistive technology and the user can identify the page.
- Minimize using tables for layout. When used, limit them to simple tables and ensure that the read order of the cell content can be linearized. Tables increase the size and footprint of the page and they are not easily maintained.
- Avoid using Frames for layout. Frames divide a web page into multiple, scrollable regions each with its own content source. Frames can be very disorienting to screen readers especially when content in one frame references content in another.
- Avoid opening new windows or "pop-ups". New windows destroy user browsing history preventing them from using the "back" button to return to the source page. If new window is opened identify the target window using target ="name" and provide a mechanism to easily return to original location on source page.
Presentation and Styles
- Use external styles sheets for presentation and minimize use inline or internal styles. Many browsers provide mechanisms to allow users to switch between style sheets letting the user set their own style.
- Write the page in the correct reading order and then use <div> tags and CSS positioning to construct the physical layout of the web page.
- Avoid fixed font sizes like 12 points or 12 pixels as they cannot be magnified. Use relative sizes like <font=3>, <font=120%> or <font=1.5 ems>. Some browsers, however, do not support EMS values less then 1.
- Avoid using multiple font types or colors on one page as they can created a busy and cluttered appearance
- Use relative sizes for container elements like tables, margins, <div>s etc.
- Provide a good contrast between background and foreground colors
- Do not use color only to convey meaning
- Avoid blinking and moving text. Do not use <blink> or <marque> tags.
- Provide a method to skip repetitive links
- Group menu links into logical sets and sub sets across the site, use <H> tags for each group heading
- Develop a vertical rather than horizontal hierarchy of menu items and use <UL> tag to create list of links
- Label links so that they make sense when removed from context
- Avoid duplicate link names