|
| 1 | +--- |
| 2 | +title: Create Accessible Apps | Microsoft Docs |
| 3 | +description: How to make apps accessible for people with disabilities |
| 4 | +services: '' |
| 5 | +suite: powerapps |
| 6 | +documentationcenter: na |
| 7 | +author: fikaradz |
| 8 | +manager: anneta |
| 9 | +editor: '' |
| 10 | +tags: '' |
| 11 | + |
| 12 | +ms.service: powerapps |
| 13 | +ms.devlang: na |
| 14 | +ms.topic: article |
| 15 | +ms.tgt_pltfrm: na |
| 16 | +ms.workload: na |
| 17 | +ms.date: 04/03/2018 |
| 18 | +ms.author: fikaradz |
| 19 | + |
| 20 | +--- |
| 21 | +# Create accessible apps |
| 22 | +An accessible app will allow users with vision, hearing and other impairments to successfully use the app. In addition to being a requirement for many governments and organizations, following the below guidelines increases usability for all users, regardless of their abilities. |
| 23 | + |
| 24 | +## Layout and color |
| 25 | +Common sense and uncomplicated design helps apps be more accessible to all users. When doing heavy customization of apps take note of the below suggestions. PowerApps themes are by default accessible. |
| 26 | +- Ensure all elements are clearly visible and text is of sufficient size. All content must be easily read and understood by the naked eye. |
| 27 | +- Avoid using the visibility property of items to bring an element into view. If you need to show something conditionally, create the content in a new screen and navigate to it and back. |
| 28 | +- Ensure input elements are labeled on the screen. **[AccessibilityLabel](controls/properties-accessibility.md)** property defines what the screen reader will announce. |
| 29 | +- If customizing colors, ensure the contrast of text:background is 4.5:1 or greater. Software tools that assist this process are readily available. |
| 30 | +- Ensure layout follows a logical flow when read top-bottom, left to right. |
| 31 | + |
| 32 | + |
| 33 | +## Keyboard support |
| 34 | +When testing your app's accessibility, ensure the app can be used with the keyboard only, the accessibility modes on iOS and Android, as well as navigated successfully with the screen reader enabled. |
| 35 | + |
| 36 | +For keyboard navigation (with or without the screen reader) ensure that a logical order is followed when using the TAB key to navigate to input fields by setting each control's **[TabIndex](controls/properties-accessibility.md)** property: |
| 37 | +- Label, Image, Icon, Shape contols - if they represent interactive elements (i.e.buttons) set TabIndex to 0; if they are decorative elements or text, set TabIndex to -1. |
| 38 | +- Avoid setting tab index higher than zero. |
| 39 | + |
| 40 | +## Screen reader support |
| 41 | +The following software combinations are the supported recommendations for consuming PowerApps with a screen reader: |
| 42 | + |
| 43 | +- **Windows**: Edge / Narrator |
| 44 | +- **macOS**: Safari / VoiceOver |
| 45 | +- **Android**: PowerApps app / Talkback |
| 46 | +- **iOS**: PowerApps app / VoiceOver |
| 47 | + |
| 48 | +To ensure a satisfying experience with the screen reader it is recommended to: |
| 49 | + |
| 50 | +- Ensure all input controls have the **[AccessibilityLabel](controls/properties-accessibility.md)** property set. |
| 51 | +- For images set **[AccessibilityLabel](controls/properties-accessibility.md)** to an appropriate description. |
| 52 | + - If a picture is not used as a button or a link (i.e. icon is there just for the decoration) and should not be read by the screen reader, make sure the **[AccessibilityLabel](controls/properties-accessibility.md)** is empty or not set. |
| 53 | + - If a picture or an icon is used as a button, then set **[TabIndex](controls/properties-accessibility.md)** to 0 and **[AccessibilityLabel](controls/properties-accessibility.md)** to the link description. |
| 54 | + |
| 55 | + |
| 56 | +## Multimedia |
| 57 | +Ensure all videos are captioned and a transcript of all audio recordings is available to the user. **Video** control suppports closed captions in WebVTT format via the **ClosedCaptionsUrl** property. |
| 58 | + |
| 59 | +Note that with the screen reader enabled, **Timer** does not announce button text, but how much time has passed. Announcements can't be turned off, even if timer is hidden with low opacity. |
| 60 | + |
| 61 | +## Working with signatures |
| 62 | +If you have a signature field that uses the PenInput control you need to enable an alternative method of signature input. The recommended way is to show a TextInput control where a user can type their name. Ensure the signing instructions are placed in the **[AccessibilityLabel](controls/properties-accessibility.md)** property and the control is placed close to the Pen input - to the right or immediately below. |
| 63 | + |
| 64 | + |
| 65 | + |
| 66 | +Related: |
| 67 | +**[Accessibility properties](controls/properties-accessibility.md)** |
0 commit comments