Wikipedia:Manual of Style/Accessibility: Difference between revisions
m →Tables: HTML case consistency |
m →Headings: headings |
||
(2 intermediate revisions by the same user not shown) | |||
Line 15: | Line 15: | ||
Headings should be nested sequentially, starting with level 2 (<code>==</code>), then level 3 (<code>===</code>) and so on (level 1 is not used, as this is the auto-generated page title), neither using random heading levels (e.g. selected for emphasis, which is not the purpose of headings), nor skipping parts of the sequence. |
Headings should be nested sequentially, starting with level 2 (<code>==</code>), then level 3 (<code>===</code>) and so on (level 1 is not used, as this is the auto-generated page title), neither using random heading levels (e.g. selected for emphasis, which is not the purpose of headings), nor skipping parts of the sequence. |
||
Never make pseudo-headings using bold or semicolon markup. Screen readers and other machines can only use correctly formatted headings. |
|||
{| class="wikitable" |
{| class="wikitable" |
||
|+ style="padding-top: 10px;" | Heading use (and misuse) examples |
|+ style="padding-top: 10px;" | Heading use (and misuse) examples |
||
|- |
|- |
||
! style="background: PaleGreen;" | Correct |
! scope="col" style="background: PaleGreen;" | Correct |
||
! style="background: Pink;" | Random/chaotic |
! scope="col" style="background: Pink;" | Random/chaotic |
||
! style="background: Pink;" | Skipping levels |
! scope="col" style="background: Pink;" | Skipping levels |
||
! scope="col" style="background: Pink;" | Pseudo-headings |
|||
|- style="vertical-align: top;" |
|- style="vertical-align: top;" |
||
| style="width: |
| style="width: 25%;" | |
||
<poem> |
<poem> |
||
''[Article lead here]'' |
''[Article lead here]'' |
||
Line 32: | Line 35: | ||
<code>====Sub-sub-section====</code> ''[4]'' |
<code>====Sub-sub-section====</code> ''[4]'' |
||
<code>==Section==</code> ''[2]''</poem> |
<code>==Section==</code> ''[2]''</poem> |
||
| style="width: |
| style="width: 25%;" | |
||
<poem> |
<poem> |
||
''[Article lead here]'' |
''[Article lead here]'' |
||
Line 41: | Line 44: | ||
<code>====Section'''?'''====</code> ''[4]'' |
<code>====Section'''?'''====</code> ''[4]'' |
||
<code>===Section'''?'''===</code> ''[2]''</poem> |
<code>===Section'''?'''===</code> ''[2]''</poem> |
||
| style="width: |
| style="width: 25%;" | |
||
<poem> |
<poem> |
||
''[Article lead here]'' |
''[Article lead here]'' |
||
Line 50: | Line 53: | ||
<code>====Sub-section'''?'''====</code> ''[4]'' |
<code>====Sub-section'''?'''====</code> ''[4]'' |
||
<code>==Section==</code> ''[2]''</poem> |
<code>==Section==</code> ''[2]''</poem> |
||
| style="width: 25%;" | |
|||
<poem> |
|||
''[Article lead here]'' |
|||
<code>==Section==</code> ''[level 2]'' |
|||
<code>===Sub-section===</code> ''[3]'' |
|||
<code><nowiki>'''Sub-section'''</nowiki></code> ''[Pseudo-headings]'' |
|||
<code>==Section==</code> ''[2]'' |
|||
<code>===Sub-section===</code> ''[3]'' |
|||
<code>;Sub-sub-section</code> ''[Pseudo-headings]''</poem> |
|||
|} |
|} |
||
Revision as of 00:32, 3 June 2012
![]() | This guideline is a part of the English Wikipedia's Manual of Style. It is a generally accepted standard that editors should attempt to follow, though occasional exceptions may apply. Any substantive edit to this page should reflect consensus. When in doubt, discuss first on the talk page. |
Manual of Style (MoS) |
---|
WikiProject Accessibility |
---|
Web accessibility is the goal of making web pages easier to navigate and read. While this is primarily intended to assist those with disabilities, it can be helpful to all readers. Articles adhering to the following guidelines are easier to read and edit for everyone.
Article structure
Lead section
As explained in detail at Wikipedia:Lead section#Elements of the lead, the lead section may contain optional elements presented in the following order: disambiguation links (dablinks), maintenance tags, infoboxes, images, navigational boxes (navigational templates), introductory text, and table of contents, moving to the heading of the first section.
Headings
Headings should be descriptive and in a consistent order (See also—References—Further reading—External links).
Headings should be nested sequentially, starting with level 2 (==
), then level 3 (===
) and so on (level 1 is not used, as this is the auto-generated page title), neither using random heading levels (e.g. selected for emphasis, which is not the purpose of headings), nor skipping parts of the sequence.
Never make pseudo-headings using bold or semicolon markup. Screen readers and other machines can only use correctly formatted headings.
Correct | Random/chaotic | Skipping levels | Pseudo-headings |
---|---|---|---|
[Article lead here] |
[Article lead here] |
[Article lead here] |
[Article lead here] |
Section structure
As explained above for the lead section, each section should have a specific structure:
<!-- CORRECT CODE --> == Foo bars == {{main|Foo bar}} {{cleanup-section}} [[File:...|Typical Foo bar]] A foo bar ...
Note also that the image should be inside the section it belongs to (after the header and after any links to other articles), and not just before the header for similar reasons.
Resolution
Wikipedia articles should be accessible to readers using devices with small screens, or to readers using monitors with a low resolution. The lowest resolution that it is considered possible to support without adversely affecting other users is 1024×768; all articles should look acceptable at this resolution without excessive horizontal scrolling. This is sometimes an issue in articles with multiple images on both sides of the screen; although lower resolutions will tend to stretch paragraphs vertically, moving images apart in that direction, be careful not to add images or other floating content on both sides of the screen simultaneously. Large tables and images can also create problems; sometimes horizontal scrolling is unavoidable, but consider restructuring wide tables to extend vertically rather than horizontally.
Text
- In articles, do not use strikethrough to remove objectionable text. Either comment it out with "<!--" and "-->" or remove it entirely. By default, most screen readers do not indicate presentational text attributes (bold, italic, underline) or even semantic text attributes (emphasis, importance, text deletion), so struck-out text is read normally along with any other text. (Editors who participate in Wikipedia policy and deletion debates are advised to turn on the sounding of text attributes when doing so, as struck text is very common in Wikipedia-internal discussions.)
- Screen readers without Unicode support will read a character outside Latin-1 as a question mark, and even in the latest version of JAWS, the most popular screen reader, Unicode characters are very difficult to read.
- Provide a transliteration for all text in a non-Latin writing system where the non-Latin character is important in the original context such as names, places, things etc.
- Do not use unpronounceable symbols such as ♥ (a heart symbol); use images with alt text instead.[1]
- Symbols that cause problems for screen readers may already have templates created to produce an image and alt text. An example is {{†}}; see Category:Image insertion templates for more.
- Do not use techniques that require interaction to provide information, such as tooltips or any other "hover" text. Abbreviations are exempt from these requirements, so the {{abbr}} template may be used to indicate the long form of a word.
- When editing, never break up a line unless absolutely necessary, as the easiest way to edit with a screen reader is to navigate line by line.
Links
- Create good link descriptions, especially for external links (avoid "click here!", "this").[2][3]
- Do not use Unicode characters as icons; use an icon with alt text instead. For example, a character like "→" can not be reproduced into useful text by a screen reader, and will usually be read as a question mark.
Color
![Two screenshots of the same highly textual user interface. The top one uses red, green, and blue; the bottom one uses nearly the same color for red and green, so that the red text becomes nearly invisible in its green background.](http://upload.wikimedia.org/wikipedia/commons/thumb/b/b5/Example_of_team_color_problem_on_Clive_Churchill_article.png/220px-Example_of_team_color_problem_on_Clive_Churchill_article.png)
Colors are most commonly found in Wikipedia articles within templates and tables. To view the colors available, see List of colors. For technical assistance on how colors are used, see Help:Using colours.
Articles that use color should keep accessibility in mind, as follows:
- Ensure that color is not the only method used to convey important information. Especially, do not use colored text or background unless its status is also indicated using another method such as an accessible symbol matched to a legend, or footnote labels. Otherwise, blind users or readers accessing Wikipedia through a printout or device without a color screen will not receive that information.
- Links should clearly be identifiable as a link to our readers.
- Some readers of Wikipedia are partially or fully color blind. Ensure the contrast of the text with its background reaches at least WCAG 2.0's AA level. and preferably AAA level. Here is a selection of tools that can be used to check that the contrast is correct:
- The Color Contrast Analyser enables you to pick colors on the page, and review their contrast thoroughly. However, be sure to only use the up-to-date "luminosity" algorithm, and not the "color brightness/difference" which is outdated.
- You can also use Snook's color contrast tool, which is entirely up-to-date.
- Several other tools exist on the web, but check if they are up-to-date before using them. Several tools are based on WCAG 1.0's algorithm, while the reference is now WCAG 2.0's algorithm. If the tool doesn't specifically mention that it is based on WCAG 2.0, assume that it is outdated.
- Additional tools can be used to help produce graphical charts and color schemes for maps and the like. These tools are not accurate means to review contrast accessibility, but they can be helpful for specific tasks.
- The color scheme generator helps to choose a good set of colors for a graphical chart.
- Color Brewer 2.0's provides safe color schemes for maps and detailed explanations.
- Colorfilter.wickline.org or vischeck.com are tools for simulating color blind vision.
- If an article overuses colors, and you don't know how to fix it yourself, you can ask for help from other editors. Place ({{Overcolored}} or {{Overcoloured}}) on the top of the article:
This article may overuse or misuse color, making it hard to understand for color-blind users. |
Block elements
Lists
Do not separate items by leaving blank lines between them, even when using unordered or definition lists. If list items are separated by more than one line break, the HTML list tags will be ended, which makes it difficult to read the list with screen readers. For example:
* One is a good number. * Two is a better number. * Three is the best number in the world. * But the number four should not be mentioned at all costs.
will be read by a screen reader as: "List of 2 items: (bullet) One is a good number, (bullet) Two is a better number, list end. List of 1 items: (bullet) Three is the best number in the world, list end. List of 1 items: (bullet) But the number four should not be mentioned at all costs, list end." Improper formatting can more than triple the length of time it takes to read the list.
Do not separate list items with line breaks (<br />). Use the above method, or one of the following.
Unbulleted lists
For unbulleted lists running down the page, the templates {{plainlist}} and {{Unbulleted list}} are available, to improve accessibility and semantic meaningfulness by marking up what is clearly a list, as such, rather than including <br />
line breaks, which should not be used - see above. Alternatively, in templates such as Navboxes and the like, or any suitable container, such lists may be styled with the class "plainlist
", thus:
| listclass = plainlist
or| bodyclass = plainlist
In infoboxes:
| rowclass = plainlist
or| bodyclass = plainlist
may be used. See also WP:UBLIST. See WP:NAV for more details on Navigation templates.
Horizontal lists
For lists running across the page, the template {{flatlist}} is available, to improve accessibility and semantic meaningfulness by marking up what is clearly a list, as such, rather than including bullet characters which, for example, are read out (e.g., "one dot two dot three dot...") by the assistive software used by people who are blind. Alternatively, in templates such as Navboxes and the like, or any suitable container, such lists may be styled with the class "hlist
", thus:
| listclass = hlist
or| bodyclass = hlist
In infoboxes:
| rowclass = hlist
or| bodyclass = hlist
may be used. See also WP:FLIST. See WP:NAV for more details on Navigation templates.
Tables
Screen readers and other web browsing tools make use of specific table tags to help users navigate the data contained within them.
Use the correct wikitable pipe syntax to take advantage of all the features available. See meta:Help:Tables for more information on the special syntax used for tables. Do not solely use formatting, either from CSS or hard-coded styles, to create semantic meaning (e.g., changing background colour).
The technique of creating a multi-line infobox using matching embedded HTML <br />
tags in adjacent cells creates a visual row not reflected in the HTML table structure. This is a problem for users of screen readers which read tables cell by cell, HTML row by HTML row, not visual row by visual row. WikiProject Accessibility/Infobox accessibility has been addressing this problem.
Data tables
{| |+ [caption text] |- ! scope="col" | [column header 1] ! scope="col" | [column header 2] ! scope="col" | [column header 3] |- ! scope="row" | [row header 1] | [normal cell 1,2] || [normal cell 1,3] |- ! scope="row" | [row header 2] | [normal cell 2,2] || [normal cell 2,3] ... |}
- Caption (
|+
) - A caption is a table's title, describing its nature.[WCAG-TECH 1]
- Row & column headers (
!
) - Like the caption, these help present the information in a logical structure to visitors.[WCAG-TECH 2] The headers help screen readers render header information about data cells. For example, header information is spoken prior to the cell data, or header information is provided on request.[4]
- Scope of headers (
! scope="col" | and ! scope="row" |
) - This clearly identifies headers as either row headers or column headers. Headers can now be associated to corresponding cells.[WCAG-TECH 3]
Wikipedia:Manual of Style/Accessibility/Data tables tutorial provides detailed requirements about:
- Correct table captions
- Correct headers structure
- Images and color
- Avoiding nested tables
Layout tables
Some navboxes, series templates, and infoboxes are made using tables.
Avoid using tables for layout purposes only. The best option is to use HTML's <div>
blocks and style attributes because they provide flexibility. For example, see {{Navbox}}
.
For simple layouts tables can be an option. Especially if the only point of the table is to get a floating effect, then align="right"
etc. will work with some browsers not supporting CSS at all. This is in fact a verbose approximation of <div>
plus CSS, and not the design sin known as (nested) "table layout".
However, to avoid accessibility barriers, when using tables for layout purposes do not use any caption, row, or column headers, and also no summary
attribute. These structural table elements should be used only for data tables. Do not use structural elements for presentation purposes, use style sheets. For Wiki table markup this means to avoid "!" (= <th> in XHTML) in such cases:
{| class="toccolours" width="94%" | align="center" bgcolor="#ccccff" | '''Title''' |- | [normal cell] || [normal cell] |- | [normal cell] || [normal cell] |}
For example, see {{Navbox}}
.
Other languages
Non-English words or phrases should be encased in {{lang}}, which uses ISO639 language codes, thus:
{{lang|fr|Assemblée nationale}}
which renders as
Assemblée nationale.
Rationale: {{lang}}
enables speech synthesizers to pronounce the text in the correct language.[5] It has many other uses; see Template:Lang/doc#Rationale for a comprehensive list of benefits.
Images
- Images should include an alt attribute, even an empty one, that acts as a substitute for the image for blind readers, search-spiders, and other non-visual users. If additional alt text is added it should be succinct, or should refer the reader to the caption or adjacent text: see WP:ALT for more information.
- Images should contain a caption, either using the built in image syntax or a secondary line of text. The caption should concisely describe the meaning of the image, the essential information it is trying to convey.
- Where possible, any charts or diagrams should have a text equivalent, or should be well-described so that users who are unable to see the image can gain some understanding of the concept.
- Detailed image descriptions, where not appropriate for an article, should be placed on the image description page, with a note saying that activating the image link will lead to a more detailed description.
- Images should be inside the section they belong to (after the heading and after any links to other articles), and not in the heading nor at the end of the previous section, otherwise screen readers would read the image (and its textual alternative) in a different section; as they would appear to viewers of the mobile site. See Wikipedia:Picture tutorial for more information.
- Avoid referring to images as being on the left or right. Image placement is different for viewers of the mobile version of Wikipedia, and is meaningless to people having pages read to them by assistive software. Instead, use captions to identify images.
- This guideline includes alt text for LaTeX-formatted equations in <math> mode.
Videos and animations
To be accessible, an animation (GIF – Graphics Interchange Format) should either:
- not exceed a duration of five seconds (which results in making it a purely decorative element),[6] or
- be equipped with control functions (stop, pause, play).[7]
In short, most animated GIFs should be converted to video (to learn how, see the tutorial converting animated GIFs to Theora OGG).
Although these are not yet supported by MediaWiki as of August 2010,[8] a video also should have subtitles and closed captions.[9][10] A good way to satisfy these needs is to make sure that the information in the video is also present in the prose text of the article. When the video is meant to be watched separately from an article, use the guides in the following references to create closed captions.[11]
Styles and markup options
Best practice: Use Wikimarkup and CSS classes in preference to alternatives
In general, styles for tables and other block-level elements should be set using CSS classes, not with inline style attributes. The site-wide CSS in MediaWiki:Common.css is more carefully tested to ensure accessibility (e.g. sufficient color contrast) and compatibility with a wide range of browsers. Moreover, it allows for users with very specific needs to change the color schemes in their own style sheet (Special:MyPage/skin.css, or their browser's style sheet). For example, a style sheet at Wikipedia:Style sheets for visually impaired users provides higher contrast backgrounds for navboxes. The problem is that when the default site-wide classes are overridden, it makes it far more difficult for an individual to choose his/her own theme.
It also creates a greater degree of professionalism by ensuring a consistent appearance between articles, and conformance to a style guide.
Regarding accessibility, deviations from standard conventions are tolerated if they are accessible. Members of the accessibility project ensured that the default style is accessible. If some template or specific color scheme deviates from the standard, its authors should make sure that it meets accessibility requirements such as providing enough color contrast. For instance, the infoboxes and navigational templates relating to The Simpsons use a yellow colour-scheme, to tie in with the dominant colour in the series. In this case, blue links on yellow provides enough color contrast, thus it is accessible.
In general, articles should use wikimarkup in preference to the limited set of allowed HTML elements. In particular, do not use the HTML style tags <i> and <b> to format text; it is preferable to use Wiki markup '' or ''', or logical style tags. Of course there are natural exceptions: it may be beneficial to use <u></u> tags to indicate something like an example of an unclickable link. The <font> tag should also be avoided in article text; use logical style tags like <em>, <code>, or <strong> to emphasise semantic differences. Use <small> and <big> semantic tags to change font size, rather than setting it explicitly with the font-size= style attribute.
Users with limited CSS/JavaScript support
Wikipedia articles should be accessible to readers using browsers and devices which have limited or no support for JavaScript or Cascading Style Sheets. At the same time, it is recognised that it is impossible to provide the same quality of appearance to such users without unnecessarily avoiding features that would benefit users with more capable browsers. As such, features which would cause content to be hidden or corrupted when CSS and/or JavaScript is unavailable must not be used. This includes techniques such as the hiddenStructure method for hiding table content—which produces incomprehensible output without CSS—and some implementations of the NavFrame collapsing code—which can make content inaccessible without JavaScript support. However, consideration for users without CSS or JavaScript should extend mainly to making sure that their reading experience is possible; it is recognised that it will inevitably be inferior.
To accommodate these considerations, test any potentially disruptive changes with JavaScript and/or CSS disabled. In Firefox, this can be done easily with the Web Developer extension; JavaScript can be disabled in IE in the "Options" screen. Be particularly careful with inline CSS effects, which are not supported by several browsers, media, and XHTML versions.
See also
- Web Accessibility Initiative (WAI)
- Wikipedia:Accessibility advocates
- Wikipedia:Accessibility dos and don'ts
- Wikipedia:Using JAWS
- Wikipedia:WikiProject Accessibility
- Wikipedia:WikiProject Usability
- usability:Accessibility Initiative
References
Specific
- ^ "F26: Failure of Success Criterion 1.3.3 due to using a graphical symbol alone to convey information". Techniques for WCAG 2.0. W3C. Retrieved 1 January 2011.
- ^ "G91: Providing link text that describes the purpose of a link". Techniques for WCAG 2.0. W3C. Retrieved 1 January 2011.
- ^ "F84: Failure of Success Criterion 2.4.9 due to using a non-specific link such as "click here" or "more" without a mechanism to change the link text to specific text". Techniques for WCAG 2.0. W3C. Retrieved 1 January 2011.
- ^ "Table cells: The TH and TD elements". Techniques for WCAG 2.0. W3C. Retrieved 1 January 2011.
- ^ H58: Using language attributes to identify changes in the human language, Techniques for WCAG 2.0, W3C, accessibility level: AA.
- ^ "Setting animated gif images to stop blinking after n cycles (within 5 seconds)". Techniques for WCAG 2.0. W3C. Retrieved 1 January 2011.
- ^ "Allowing the content to be paused and restarted from where it was paused". Techniques for WCAG 2.0. W3C. Retrieved 1 January 2011.
- ^ The conference about Kaltura's partnership with Wikimedia Collaborating on Collaborative Video for Wikipedia announced that video will get "multi-lingual timed text subtitles" in a near future. Alt text was not mentioned and its implementation might not be planned.
- ^ "Providing an alternative for time based media". Techniques for WCAG 2.0. W3C. Retrieved 1 January 2011.
- ^ "Providing an alternative for time-based media for audio-only content". Techniques for WCAG 2.0. W3C. Retrieved 1 January 2011.
- ^ Please see : A quick and basic reference for closed captions, a detailed reference (PDF) and a list of best practices for closed captions.
General
- Clark, Joe (2003). Building Accessible Websites. New Riders Press. ISBN 0-7357-1150-X. Retrieved 1 January 2011.
{{cite book}}
: Cite has empty unknown parameter:|month=
(help) - Pilgrim, Mark (2002). "Dive Into Accessibility: 30 days to a more accessible web site". Retrieved 1 January 2011.
Technical
- ^ H39: Using caption elements to associate data table captions with data tables, A accessibility level.
- ^ "H51: Using table markup to present tabular information". W3C. Retrieved 1 January 2011.
- ^ "H63: Using the scope attribute to associate header cells and data cells in data tables". Techniques for WCAG 2.0. W3C. Retrieved 1 January 2011.