Checkpoint 2.3.1 Three Flashes or Below Threshold

Content does not contain anything that flashes more than three times in any one second period, or the flash is below the general flash and red flash thresholds. (Level A)

Rationale

The purpose of this checkpoint is to enable users to access content without inducing seizures due to photosensitivity.

For people with photosensitive seizure disorders, content that flashes at certain frequencies for more than a few flashes can trigger a seizure. Because people are more sensitive to red flashing than to other colors, you must perform a special test for saturated red flashing. These guidelines are based on the broadcasting industry guidelines, but they have been adapted for computer monitors, which allow content to be viewed from a short distance (using a larger angle of vision).

Refer to Understanding SC 2.3.1 for more information (external link to WCAG).

Development Techniques

Review the General techniques as well as other tabs applicable to your technology.  Prioritize the use of technology-specific techniques, and implement the General techniques as needed. You are always required to find, understand and implement accessible code techniques to meet the checkpoint. The documented techniques and supplements are not exhaustive; they illustrate acceptable ways to achieve the spirit of the checkpoint. If numbered, techniques are in order of preference, with recommended techniques listed first. Where used, IBM information that complements the WCAG techniques is indicated as supplemental.

Web (HTML, ARIA, CSS) techniques

There are no specific Web (HTML, ARIA, CSS) techniques for this checkpoint. Refer to the General techniques section.

Mobile Native (iOS) techniques

There are no specific Mobile Native iOS techniques for this checkpoint. Refer to the General techniques section.

Eclipse techniques

Instructions: In addition to the General techniques, the Eclipse techniques in this section represent a technique or combination of techniques deemed sufficient for meeting this checkpoint (2.3.1).

Situation A: The system cursor is used

Situation B: A custom cursor is used

Situation A: The system cursor is used

Use system cursor

Since the system cursor is typically small enough as defined in General technique G176: Keeping the flashing area small enough, then it would automatically pass this checkpoint (2.3.1). SWT widgets use the system cursor and properly reflect user preferences for the thickness of the blinking cursor.

Situation B: A custom cursor is used

Ensure custom cursor is small enough

Applications which override the presentation of the system cursor through org.eclipse.swt.graphics.Cursor must ensure that the custom cursor remains small enough as defined in General technique G176: Keeping the flashing area small enough.

Follow general techniques for cursor

If the cursor is larger than 25% of 10 degrees of visual field, then the blink rate of the cursor must be less than 3 flashes per second or remain below the threshold as outlined in General techniques of this checkpoint (2.3.1).

Windows-based (MSAA+IA2) techniques

Instructions: In addition to the General techniques, the Windows-based (MSAA+IA2) techniques in this section represent a technique or combination of techniques deemed sufficient for meeting this checkpoint (2.3.1).

Situation A: The system cursor is used

Situation B: A custom cursor is used

Situation A: The system cursor is used

Use system cursor

Since the system cursor is typically small enough as defined in General technique G176: Keeping the flashing area small enough, then it would automatically pass this checkpoint (2.3.1).

Situation B: A custom cursor is used

Ensure custom cursor is small enough

Applications which override the presentation of the system must ensure that the custom cursor remains small enough as defined in General technique G176: Keeping the flashing area small enough.

Retrieve the blink rate from the system setting.

Windows allows users to customize the cursor blink rates through the Control Panel - Keyboard settings. Developers can access these settings through the GetCaretBlinkTime function (in the Desktop Dev Center on MSDN) to emulate the system's cursor blink rate for custom cursors or for customized user interface elements. For more information on this technique, refer to the Microsoft article "Flashing User Interface and the GetCaretBlinkTime Function."

Additionally, the thickness of the blinking cursor can be adjusted in the Ease of Access Center (renamed from Accessibility Options) and that property can be retrieved via SM_CXCURSOR in GetSystemMetrics.

Follow general techniques for cursor

If the cursor is larger than 25% of 10 degrees of visual field, then the blink rate of the cursor must be less than 3 flashes per second or remain below the threshold as outlined in General techniques of this checkpoint (2.3.1).


Most links in this checklist reside outside ibm.com at the Web Content Accessibility Guidelines (WCAG) 2.0. W3C Recommendation 11 December 2008: http://www.w3.org/TR/WCAG20/

Copyright © 1994-2017 World Wide Web Consortium, (Massachusetts Institute of Technology, European Research Consortium for Informatics and Mathematics, Keio University, Beihang University). All Rights Reserved.

Copyright © 2001, 2017 IBM Corporation