Geneste Elementnaam

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

Zorg ervoor dat alle zichtbare tekst in een container toegankelijk is voor schermlezers

Not for use with personal data
note

Dit is een experimentele regel, en daarom worden de resultaten als bètatests beschouwd. Meer informatie over experimentele regels en hoe je kunt helpen ze te verbeteren.

WCAG 2.0 - 1.3.2 A Impact - Critical

Leer hoe we kunstmatige intelligentie gebruiken voor deze regel!

Waar We Op Controleren

Een focusbaar element moet alle zichtbare tekst binnen zijn toegankelijke naam beschikbaar hebben voor assistieve technologieën zoals TalkBack en Voice Access.

In Een Oogopslag

  • Deze regel heeft een kritische impact voor gebruikers
  • Alle zichtbare tekst binnen een focusbare container moet beschikbaar zijn voor TalkBack en Voice Access
  • Vermijd het instellen van importantForAccessibility="no" op tekstelementen die door ziende gebruikers kunnen worden waargenomen
  • Vermijd in Compose het gebruik van invisibleToUser() op Textelementen die zichtbaar op het scherm zijn
  • In React Native, vermijd het instellen van importantForAccessibility op no-hide-descendants op zichtbare tekst

Impact op Gebruikers

Mensen die TalkBack gebruiken, worden het meest getroffen door problemen met Geneste Elementnaam. Wanneer meerdere elementen samen in een container zijn gegroepeerd, leest TalkBack mogelijk niet alle tekst binnen de container - vooral als individuele tekstelementen verborgen zijn voor assistieve technologie. Dit betekent dat mensen die vertrouwen op TalkBack mogelijk geen kennis hebben van belangrijke inhoud op het scherm die beschikbaar is voor ziende gebruikers.

Bevestig Probleem met Geneste Elementnaam

  1. Schakel TalkBack in
  2. Focus op het toegankelijkheidselement met de tekst
  3. Een van de volgende zal gebeuren:
    • Niet Toegankelijk: TalkBack leest niet alle zichtbare tekst binnen het focusgebied
    • Toegankelijk: TalkBack leest alle tekst binnen het focusgebied

Los Probleem Op

Om problemen met Geneste Elementnaam op te lossen, zorg ervoor dat alle zichtbare tekst binnen een focusbare container beschikbaar is voor assistieve technologie. Vermijd het expliciet verbergen van tekstelementen voor TalkBack of Voice Access wanneer ze inhoud bevatten die ziende gebruikers kunnen waarnemen.

XML

Vermijd het instellen van de eigenschap importantForAccessibility op tekstweergaven op no. Alle gebruikers moeten dezelfde toegang tot tekst op het scherm hebben, ongeacht of ze assistieve technologie gebruiken of niet.

Compose

Vermijd het markeren van Compose-Textelementen als invisibleToUser. Alle gebruikers moeten dezelfde toegang tot tekst op het scherm hebben, ongeacht of ze assistieve technologie gebruiken of niet.

Verwijder in het onderstaande voorbeeld invisibleToUser om ervoor te zorgen dat weergaven beschikbaar zijn voor mensen die assistieve technologie gebruiken.

Row {
    Text("Welcome to Deque")
    Text("I am a text element.", modifier = Modifier.semantics {
        // Omit the API below to make your Text elements accessible
        invisibleToUser()
    })
}

React Native

Een probleem gevonden door deze regel in apps gebouwd met React Native duidt op een verkeerd gebruik van de eigenschap importantForAccessibility . Als je de eigenschap gebruikt, zorg ervoor dat deze NIET is ingesteld op no-hide-descendants.

Flutter

Wanneer een container meerdere stukken tekst groepeert, zorg ervoor dat alle zichtbare tekst wordt blootgesteld aan de schermlezer. Gebruik MergeSemantics om kind-tekstknooppunten samen te voegen tot één toegankelijke naam.

// Failing — ExcludeSemantics hides visible text from the screen reader
Semantics(
  label: 'Item name: Widget',
  child: Column(
    children: [
      const Text('Item name: Widget'),
      ExcludeSemantics(child: const Text('Price: \$9.99')),
      ExcludeSemantics(child: const Text('In stock')),
    ],
  ),
)

// Passing — MergeSemantics combines all child text into one node
// Screen reader announces "Item name: Widget, Price: $9.99, In stock"
MergeSemantics(
  child: Column(
    children: [
      const Text('Item name: Widget'),
      const Text('Price: \$9.99'),
      const Text('In stock'),
    ],
  ),
)

Kan Ik Deze Regel Negeren?

Geneste Elementnaam heeft een kritische impact voor gebruikers, en we raden sterk aan stappen te ondernemen om dit probleem te verhelpen. In zeldzame gevallen kan wat tekst binnen een container opzettelijk decoratief of overbodig zijn — maar dit zou de uitzondering moeten zijn, niet de standaard. Meer informatie over regels negeren.

Middelen

Deque University Cursus Pagina's

Opmerking: Volledige toegang tot Deque University-bronnen vereist een abonnement.

Andere Middelen