@@ -92,7 +92,8 @@ element.
9292In thinking about accessibility, it is useful to place icon use into one of three categories:
93931 . ** Decorative** : the icon conveys no real semantic meaning and is purely cosmetic.
94942 . ** Interactive** : a user will click or otherwise interact with the icon to perform some action.
95- 3 . ** Indicator** : the icon is not interactive, but it conveys some information, such as a status.
95+ 3 . ** Indicator** : the icon is not interactive, but it conveys some information, such as a status. This
96+ includes using the icon in place of text inside of a larger message.
9697
9798### Bidirectionality
9899
@@ -105,22 +106,21 @@ you want to mirror an icon only in an RTL layout, you can use the `mat-icon-rtl-
105106```
106107
107108#### Decorative icons
108- When the icon is puely cosmetic and conveys no real semantic meaning, the ` <mat-icon> ` element
109- should be marked with ` aria-hidden="true" ` .
109+ When the icon is purely cosmetic and conveys no real semantic meaning, the ` <mat-icon> ` element
110+ is marked with ` aria-hidden="true" ` .
110111
111112#### Interactive icons
112113Icons alone are not interactive elements for screen-reader users; when the user would interact with
113114some icon on the page, a more appropriate element should "own" the interaction:
114115* The ` <mat-icon> ` element should be a child of a ` <button> ` or ` <a> ` element.
115- * The ` <mat-icon> ` element should be marked with ` aria-hidden="true" ` .
116116* The parent ` <button> ` or ` <a> ` should either have a meaningful label provided either through
117117direct text content, ` aria-label ` , or ` aria-labelledby ` .
118118
119119#### Indicator icons
120- When the presence of an icon communicates some information to the user, that information must also
121- be made available to screen-readers. The most straightforward way to do this is to
122- 1 . Mark the ` <mat-icon> ` as ` aria-hidden="true" `
123- 2 . Add a ` <span> ` as an adjacent sibling to the ` <mat-icon> ` element with text that conveys the same
120+ When the presence of an icon communicates some information to the user whether as an indicator or
121+ by being inlined into a block of text, that information must also be made available to
122+ screen-readers. The most straightforward way to do this is to
123+ 1 . Add a ` <span> ` as an adjacent sibling to the ` <mat-icon> ` element with text that conveys the same
124124information as the icon.
125- 3 . Add the ` cdk-visually-hidden ` class to the ` <span> ` . This will make the message invisible
125+ 2 . Add the ` cdk-visually-hidden ` class to the ` <span> ` . This will make the message invisible
126126on-screen but still available to screen-reader users.
0 commit comments