Aller au contenu
SkillCodex
Menu

Bottom sheet

Feuille basse

Une surface pensée pour mobile, attachée au bord inférieur, qui peut s'ouvrir à des hauteurs stables et accepter le glissement.

Essayer le composant
Repères, sources et actions
Sources et révision
Mis à jour le
Version
v1.0.26 · r2
Sources
5 sources
Statut
Publié
Consulter les sources

Tu as peut-être cherché : un panneau qui remonte du bas sur mobilefaire glisser cette feuille plus haut pour voir davantageun panneau de téléphone avec une poignée

Toutes les formulations
Enregistrer et partager

Reconnaître

Surfaces attachées à un bord

Essayer

La surface doit-elle rester persistante, entrer depuis un bord latéral ou monter depuis le bas ?

Feuille basse

Contexte commun aux essais

Un espace de travail place une navigation ou des contrôles complémentaires le long d'un bord de l'écran tout en gardant la tâche principale dans son contexte.

Feuille basse

Mission

Feuille basse - Bottom sheet

Sur mobile, ouvrir Filtres, faire passer la feuille de mi-hauteur à pleine hauteur par glissement ou boutons, activer En stock et appliquer.

12 résultats

Mobilier de bureau

  • Bureau compact

    En stock

  • Chaise réglable

    Sur commande

Résultat de l’essai

Les 12 résultats de mobilier sont visibles. La feuille de filtres est fermée.

Étape 1 sur 3

Essayer

Manipule le composant. Le résultat de ton essai apparaît juste au-dessus. Avance à ton rythme.

Comportement et cas limite
À observer
La feuille mobile temporaire est attachée en bas à mi-hauteur, garde les mêmes résultats de mobilier visibles derrière elle et peut s'ancrer en pleine hauteur.
Cas limite
Au clavier, il est possible de développer, replier, appliquer le filtre de disponibilité et fermer sans dépendre du glissement.

Ce que cet essai montre

Bottom sheet est ancré en bas et peut être glissé ; Drawer utilise un bord latéral défini, tandis que Sidebar reste dans la mise en page persistante.

Lequel convient à ton besoin ?

Feuille basse

Afficher les détails d'un lieu sur une carte mobile

Volet latéral

Modifier des filtres sans quitter les résultats

Quel composant utilises-tu ici ?
Différence et sources

Bottom sheet est ancré en bas et peut être glissé ; Drawer utilise un bord latéral défini, tandis que Sidebar reste dans la mise en page persistante.

Consulter les sources

    Parties du spécimen

    Sélectionne un repère numéroté sur le schéma, ou utilise la liste ci-dessous, pour afficher son rôle. Le schéma montre l'état représentatif du concept.

    Voile de fond

    La couche qui sépare une surface modale du contenu de page inactif.

    Position dans l’atlas

    Carte relationnelle

    Repère le chapitre, les concepts proches et la prochaine décision utile.

    • Chapitre

      Surfaces attachées à un bord

      Feuille basse appartient à ce groupe de concepts comparés.

    • Ne pas confondre

      Volet latéral

      Choisis Feuille basse si l’action est compacte, surtout sur mobile, et gagne à rester au-dessus du contenu. Choisis Volet latéral si le panneau est plus structuré et entre depuis la gauche ou la droite.

      Comparer cette paire
    • Ne pas confondre

      Barre latérale

      Choisis Feuille basse si la surface apparaît pour une tâche ponctuelle, surtout sur mobile, puis disparaît. Choisis Barre latérale si la navigation doit rester visible et persistante dans l’espace de travail.

      Comparer cette paire
    • Prochaine étape

      Compare les concepts du chapitre avant de retenir une implémentation.

      Ouvrir le chapitre

    Avec tes mots

    Comprendre

    Ce que les gens décrivent

    Alias documentés : feuille mobile, panneau inférieur, feuille à glisser

    • un panneau qui remonte du bas sur mobile
    • faire glisser cette feuille plus haut pour voir davantage
    • un panneau de téléphone avec une poignée
    • afficher des actions rapides au-dessus du bord inférieur
    • une fiche de carte que je peux tirer vers le haut
    • un panneau inférieur à mi-hauteur ou pleine hauteur

    Choisir

    À utiliser quand

    • Afficher les détails d'un lieu sur une carte mobile
    • Proposer une surface mobile compacte d'action ou de sélection

    À éviter quand

    • Le placement latéral sur ordinateur définit le comportement
    • Le glissement est le seul moyen d'atteindre le contenu ou fermer

    Comparer

    Comparer les concepts proches

    Équivalents par plateforme

    Une même interaction peut changer de nom ou de contrat selon la plateforme. Vérifie la correspondance avant de choisir une API.

    • HTML

      Aucune primitive directe

      Aucune primitive directe

      HTML n'a pas d'élément bottom sheet ; la sémantique dialogue et les gestes tactiles exigent une composition dédiée.

      Vérifié
    • WAI-ARIA APG

      Aucune primitive directe

      Aucune primitive directe

      L'APG n'a pas de modèle bottom sheet ; utilise un dialogue si la surface est modale et sépare placement et rôle.

      Vérifié
    • Radix UI

      Aucune primitive directe

      Aucune primitive directe

      Radix n'a pas de primitive bottom sheet avec glissement ; Dialog seul ne fournit ni paliers ni gestes de balayage.

      Vérifié
    • shadcn/ui

      Direct

      Drawer

      shadcn/ui docs 2026-09-03

      La recette Drawer utilise une présentation basse fondée sur Vaul avec glissement et fermeture.

      Vérifié Documentation officielle
    • Material UI

      Aucune primitive directe

      Aucune primitive directe

      Material UI core n'a pas de composant BottomSheet ; un SwipeableDrawer ancré en bas reste une composition, pas une primitive exacte.

      Vérifié
    • SwiftUI

      Partiel

      .sheet + .presentationDetents

      SwiftUI documentation 2026-09

      Les detents donnent des hauteurs partielles à une sheet ; glissement, interaction arrière-plan et adaptation compacte restent configurables.

      Vérifié Documentation officielle
    • Jetpack Compose

      Direct

      ModalBottomSheet

      Android Developers 2026-08

      ModalBottomSheet fournit une surface modale ancrée, son état, le glissement et un retrait explicite après fermeture.

      Vérifié Documentation officielle
    • Flutter

      Direct

      showModalBottomSheet<T>()

      Flutter API docs 2026-09

      La fonction présente une bottom sheet Material modale avec barrière, glissement, fermeture et options de taille.

      Vérifié Documentation officielle

    Profil d’impact

    Coûts d’implémentation mesurés et contraintes d’exploitation de ce spécimen SkillCodex. Une valeur non évaluée n’est jamais présentée comme gratuite.

    Rendu
    Client
    Poids différé
    25 kB-gzip
    Mesuré ·
    Environnement
    macOS 26.6.2; Node 24.19.0; pnpm 10.34.5; Next.js 16.3.0 Turbopack; Chromium 140
    Méthode
    Sum of gzip -9 bytes for the lazy files of module 79748 in .next/server/app/(en)/term/[slug]/page/react-loadable-manifest.json after pnpm build:local at c9f1299.
    Appareils modestes
    Correct
    Mesuré ·
    Environnement
    macOS 26.6.2; Node 24.19.0; pnpm 10.34.5; Next.js 16.3.0 Turbopack; Chromium 140
    Méthode
    Loaded the 390 x 844 term route in isolated Chromium with 6x CPU throttling and reduced motion, then exercised the first state change; failures are recorded as non-blocking warnings.
    CPU / GPU
    Vaul et React pilotent une feuille DOM déplacée par transformation ; aucun rendu canvas ou WebGL n’est présent.
    Mesuré ·
    Environnement
    macOS 26.6.2; Node 24.19.0; pnpm 10.34.5; Next.js 16.3.0 Turbopack; Chromium 140
    Méthode
    Static source inspection of the target lab module plus an interaction on the isolated Chromium verification route; checked DOM/React work and absence of canvas or WebGL.
    Réduction des animations
    Le contrat global de réduction des animations ramène leurs durées et celles des transitions au minimum ; les mêmes états et contrôles restent disponibles.
    Mesuré ·
    Environnement
    macOS 26.6.2; Node 24.19.0; pnpm 10.34.5; Next.js 16.3.0 Turbopack; Chromium 140
    Méthode
    Inspected src/app/globals.css prefers-reduced-motion rules and repeated the target interaction with reducedMotion=reduce in Chromium.
    Repli statique
    Sans JavaScript, la fiche reste sur son repli Chargement localisé ; le profil et le spécimen initial ne sont pas révélés.
    Mesuré ·
    Environnement
    macOS 26.6.2; Node 24.19.0; pnpm 10.34.5; Next.js 16.3.0 Turbopack; Chromium 140
    Méthode
    Loaded all ten prerendered routes from a local next start build in Chromium with JavaScript disabled; each HTTP 200 remained on the localized Loading fallback, so the profile and specimen were not revealed.
    Rendu serveur
    S’hydrate
    Mesuré ·
    Environnement
    macOS 26.6.2; Node 24.19.0; pnpm 10.34.5; Next.js 16.3.0 Turbopack; Chromium 140
    Méthode
    Inspected the prerendered route response, then loaded the same route with JavaScript enabled and exercised the hydrated client specimen.
    Maintenance
    Stable
    Dépendances

    Bon choix

    • Les actions ou choix mobiles courts qui restent proches du contexte courant.

    À éviter quand

    • Les formulaires longs, les parcours pensés d’abord pour ordinateur ou le contenu qui exige une URL stable.

    Checklist de vérification

    Essaie ces gestes dans le lab, puis vérifie les mêmes comportements dans le résultat de ton agent. Adapte les noms d’exemple à ton interface.

    1. 1. À faire

      Ouvre le panneau inférieur, agrandis-le et réduis sa hauteur avec ses boutons plutôt qu’en le faisant glisser.

      Résultat attendu

      Le panneau ancré en bas change de hauteur, et son contenu comme sa fermeture restent accessibles sans geste de glissement.

    2. 2. À faire

      Applique un filtre, rouvre le panneau inférieur, modifie le brouillon et annule.

      Résultat attendu

      Le dernier résultat appliqué reste en place ; fermer sans appliquer ne valide pas le nouveau brouillon.

    3. 3. À faire

      Parcours le panneau avec Tab, puis ferme-le avec Échap.

      Résultat attendu

      La version modale garde le focus à l’intérieur tant qu’elle est ouverte ; après fermeture, le focus revient à son bouton d’ouverture.

    Contrat complet
    1. 1La surface est visiblement ancrée en bas
    2. 2Chaque glissement possède un équivalent bouton ou clavier
    3. 3Les positions stables révèlent des états utiles
    4. 4Les alternatives clavier et le retour du focus sont vérifiés

    Comprendre → Reconnaître → Choisir → Comparer

    Pack pour ton agent

    Instructions pré-écrites à coller dans ton agent. Copier n’exécute rien.

    Implémenter correctement

    Construis Feuille basse sans casser son comportement

    # Implémenter Feuille basse dans ton agent
    
    ## Objectif
    Implémente Feuille basse pour ce comportement vérifié : Une surface pensée pour mobile, attachée au bord inférieur, qui peut s’ouvrir à des hauteurs stables et accepter le glissement.
    
    ## Prérequis
    - Inspecte d’abord le dépôt, le design system et les tests existants.
    - Préserve les changements sans rapport et borne les fichiers modifiés.
    - Confirme que Feuille basse répond au besoin avant de coder.
    
    ## Comportement requis
    - Le glissement tactile déplace la feuille entre des hauteurs stables, sans priver les contrôles du clavier.
    - Tant que la surface est modale, le focus clavier y reste jusqu’à sa fermeture.
    - Échap ferme la surface temporaire et renvoie le focus vers un contrôle pertinent.
    
    ## États à couvrir
    - Feuille fermée
    - Feuille à mi-hauteur
    - Feuille en pleine hauteur
    
    ## Accessibilité
    - Rôle ARIA : dialog[aria-modal=true]
    - Le contrôle principal ou la région nommée pour Feuille basse possède un nom accessible stable issu d’un texte visible ou d’un libellé programmatique explicite ; le placeholder et l’infobulle ne servent pas de nom.
    - Le focus entre dans la feuille modale, y reste et revient au déclencheur Filtres après la fermeture.
    - Le contrôle fermer, Échap et un geste vers le bas dépassant le seuil prévu ferment ; les petits glissements accidentels reviennent en place.
    - Le titre de la feuille, son état modal, son état développé et les changements de chargement sont disponibles sans dépendre du mouvement.
    - Tab atteint tous les contrôles
    - Des boutons remplacent les gestes développer et replier
    - Échap ferme la feuille modale
    
    ## Quand ne pas utiliser
    - Le placement latéral sur ordinateur définit le comportement
    - Le glissement est le seul moyen d’atteindre le contenu ou fermer
    
    ## Critères d’acceptation
    - La surface est visiblement ancrée en bas
    - Chaque glissement possède un équivalent bouton ou clavier
    - Les positions stables révèlent des états utiles
    - Les alternatives clavier et le retour du focus sont vérifiés
    
    ## Garde-fous
    - Montre d’abord les changements envisagés avant toute action externe.
    - Ne publie, n’envoie, ne supprime, ne paie et ne modifie aucun état distant sans autorisation explicite.
    - Préserve les changements sans rapport et arrête-toi si le périmètre devient ambigu.
    
    ## Format de sortie
    - Résultat obtenu ou verdict.
    - Fichiers ou actions concernés.
    - Vérifications exécutées et preuves observables.
    - Blocages ou limites restantes.
    
    • vaul
    • Prérequis · Accès au dépôt, au design system et aux tests
    Pourquoi ça marche
    • Le besoin est relié au comportement canonique avant toute décision technique.
    • Les états, l’accessibilité et les non-objectifs empêchent une implémentation seulement visuelle.
    • Les critères d’acceptation et le format de sortie rendent la vérification observable.

    À essayer ensuite

    Vérifie Feuille basse sur un parcours réel

    # Vérifier Feuille basse après l’implémentation
    
    ## Objectif
    Audite l’implémentation de Feuille basse au regard de son comportement, de ses états et de ses exigences d’accessibilité sans la modifier automatiquement.
    
    ## Contrôles
    - Rejoue le plus petit parcours représentatif.
    - Contrôle le clavier, le focus, le nom accessible et les annonces.
    - Relie chaque écart à un critère d’acceptation précis.
    
    ## Garde-fous
    - Montre d’abord les changements envisagés avant toute action externe.
    - Ne publie, n’envoie, ne supprime, ne paie et ne modifie aucun état distant sans autorisation explicite.
    - Préserve les changements sans rapport et arrête-toi si le périmètre devient ambigu.
    
    ## Format de sortie
    - Résultat obtenu ou verdict.
    - Fichiers ou actions concernés.
    - Vérifications exécutées et preuves observables.
    - Blocages ou limites restantes.
    

    sha256:21d8e6f4c88b7cfd59806e1510c9354ec8a116f1ae13dabd77eb965ebc82e1a3

    Diagnostiquer un problème

    Trouve et corrige le défaut de Feuille basse

    # Déboguer Feuille basse dans ton agent
    
    ## Symptôme observé
    [DÉCRIS ICI LE SYMPTÔME]
    
    ## Contrôles observables
    - Reproduis le problème avec le plus petit parcours pertinent.
    - Compare le comportement aux états et transitions documentés de Feuille basse.
    - Vérifie le clavier, le focus, le nom accessible et les annonces.
    
    ## Causes possibles
    - La primitive employée ne correspond pas au comportement attendu.
    - Un état, une transition ou un retour de focus manque.
    - Le composant voisin capture un événement ou masque un signal accessible.
    
    ## Corrections bornées
    - Corrige la cause reproduite sans recréer les composants voisins.
    - Conserve le contrat public et ajoute un test ciblé de non-régression.
    - N’installe aucune dépendance et ne modifie aucun état distant sans autorisation.
    
    ## Vérification finale
    - La surface est visiblement ancrée en bas
    - Chaque glissement possède un équivalent bouton ou clavier
    - Les positions stables révèlent des états utiles
    - Les alternatives clavier et le retour du focus sont vérifiés
    
    ## Garde-fous
    - Montre d’abord les changements envisagés avant toute action externe.
    - Ne publie, n’envoie, ne supprime, ne paie et ne modifie aucun état distant sans autorisation explicite.
    - Préserve les changements sans rapport et arrête-toi si le périmètre devient ambigu.
    
    ## Format de sortie
    - Résultat obtenu ou verdict.
    - Fichiers ou actions concernés.
    - Vérifications exécutées et preuves observables.
    - Blocages ou limites restantes.
    
    • vaul
    • Prérequis · Accès au dépôt, au design system et aux tests
    Pourquoi ça marche
    • Le symptôme explicite évite de partir d’une correction supposée.
    • Les contrôles séparent comportement, accessibilité et interférences voisines.
    • La correction reste bornée et doit produire une preuve de non-régression.

    À essayer ensuite

    Verrouille la correction de Feuille basse

    # Empêcher la régression de Feuille basse
    
    ## Objectif
    Transforme la cause reproduite en test de non-régression ciblé et compare Feuille basse aux concepts voisins avant d’élargir la correction.
    
    ## Contrôles
    - Prouve que le test échoue avant la correction.
    - Prouve qu’il passe après la correction bornée.
    - Vérifie qu’aucun composant voisin n’a changé de comportement.
    
    ## Garde-fous
    - Montre d’abord les changements envisagés avant toute action externe.
    - Ne publie, n’envoie, ne supprime, ne paie et ne modifie aucun état distant sans autorisation explicite.
    - Préserve les changements sans rapport et arrête-toi si le périmètre devient ambigu.
    
    ## Format de sortie
    - Résultat obtenu ou verdict.
    - Fichiers ou actions concernés.
    - Vérifications exécutées et preuves observables.
    - Blocages ou limites restantes.
    

    sha256:b407a47b509d0ca81270c4d3bef65a6916d3f3bc16b4bfa1feac6fc22523ae37

    Fiche complète, enregistrement et provenance

    Instruction pré-écrite par SkillCodex — ta demande n’est ni envoyée ni utilisée pour adapter ce texte ; aucun contenu n’est généré et copier n’exécute rien.

    Digest du Pack: sha256:e9f26ac0fac0f599d8a64c13b8c47f122d3f60c17df0ea6c3d24c81df5a7e414

    Dans le code

    TechnologiePrimitiveVersionLimite
    vaul

    Drawer

    vaul@1.1.2Vaul fournit le glissement et les positions d’arrêt de cette surface mobile ; il ne remplace pas de façon générique Dialog, Drawer ou Sidebar.

    Détails techniques

    Comportements

    • Glisser entre des positions

      Le glissement tactile déplace la feuille entre des hauteurs stables, sans priver les contrôles du clavier.

    • Contenir le focus

      Tant que la surface est modale, le focus clavier y reste jusqu'à sa fermeture.

    • Fermer avec Échap

      Échap ferme la surface temporaire et renvoie le focus vers un contrôle pertinent.

    États

    • Feuille fermée

      Feuille fermée

    • Feuille à mi-hauteur

      Feuille à mi-hauteur

    • Feuille en pleine hauteur

      Feuille en pleine hauteur

    Transitions d’état

    • Feuille fermée → Feuille à mi-hauteur

      Le déclencheur Filtres ouvre la feuille à son point initial de mi-hauteur.

    • Feuille à mi-hauteur → Feuille en pleine hauteur

      Un glissement vers le haut ou le bouton Agrandir place la feuille en pleine hauteur.

    • Feuille en pleine hauteur → Feuille à mi-hauteur

      Un glissement vers le bas ou le bouton Réduire ramène la feuille à mi-hauteur.

    • Feuille à mi-hauteur → Feuille fermée

      Appliquer confirme le filtre, ou Échap abandonne son brouillon ; les deux ferment la feuille à mi-hauteur et rendent le focus à Filtres.

    • Feuille en pleine hauteur → Feuille fermée

      Appliquer confirme le filtre, ou Échap abandonne son brouillon ; les deux ferment la feuille en pleine hauteur et rendent le focus à Filtres.

    Scénarios de test

    Contexte
    Une page de résultats de mobilier de bureau affiche la même liste Bureau compact et Chaise réglable pendant que les utilisateurs filtrent la disponibilité et parcourent les catégories sans quitter les résultats.
    Mission
    Sur mobile, ouvrir Filtres, faire passer la feuille de mi-hauteur à pleine hauteur par glissement ou boutons, activer En stock et appliquer.
    État principal
    La feuille mobile temporaire est attachée en bas à mi-hauteur, garde les mêmes résultats de mobilier visibles derrière elle et peut s'ancrer en pleine hauteur.
    Cas limite
    Au clavier, il est possible de développer, replier, appliquer le filtre de disponibilité et fermer sans dépendre du glissement.

    Signaux visuels

    • Surface attachée au bord inférieur
    • Bord supérieur arrondi ou poignée
    • Plusieurs hauteurs visibles pertinentes

    Signaux comportementaux

    • Le glissement tactile change de position stable
    • Le clavier fonctionne sans glissement
    • Peut devenir modale une fois développée

    Accessibilité

    Rôle
    dialog[aria-modal=true]
    Nom accessible
    Le contrôle principal ou la région nommée pour Feuille basse possède un nom accessible stable issu d’un texte visible ou d’un libellé programmatique explicite ; le placeholder et l’infobulle ne servent pas de nom.
    Focus clavier
    Le focus entre dans la feuille modale, y reste et revient au déclencheur Filtres après la fermeture.
    Fermeture
    Le contrôle fermer, Échap et un geste vers le bas dépassant le seuil prévu ferment ; les petits glissements accidentels reviennent en place.
    Défilement
    La page derrière la surface reste fixe. Le contenu long défile dans le panneau et le glissement tactile ne prive pas le contenu imbriqué de son défilement.
    Annonce
    Le titre de la feuille, son état modal, son état développé et les changements de chargement sont disponibles sans dépendre du mouvement.
    Clavier
    • Tab atteint tous les contrôles
    • Des boutons remplacent les gestes développer et replier
    • Échap ferme la feuille modale

    Implémentations

    Ouvrir la matrice HTML, ARIA, Radix et shadcn
    • Drawer

      implementationKind
      specialized
      nativeElement
      Non applicable
      ariaPattern
      dialog when modal
      radixPrimitive
      Non applicable
      shadcnRecipe
      Drawer (Radix backend)
      runtimeDependency
      vaul@1.1.2
      packageName
      vaul
      exportName
      Drawer
      exactVersion
      1.1.2
      status
      exception
      sourceId
      source-ui-vaul-drawer
      deprecationStatus
      active
      replacement
      Non applicable
      validFrom
      Non applicable
      validUntil
      Non applicable

      Limite d’équivalence : Vaul fournit le glissement et les positions d’arrêt de cette surface mobile ; il ne remplace pas de façon générique Dialog, Drawer ou Sidebar.

      Vérifier la source du binding

    Sources

    • Vaul: Drawer Documentation
      sourceId
      source-ui-vaul-drawer
      kind
      documentation
      canonicalUrl
      https://vaul.emilkowal.ski/getting-started
      publisher
      Emil Kowalski
      sourceRevision
      http-etag:W/"6b8da0fa2ad3af9f4a94fec100a1ccc6"
      consultedAt
      2026-07-19
      license
      Non indiquée
      contentDigest
      sha256:42069ca59d32282b4e3fe6800b3014b8a03c8a302fb90129e09d31981bdaf05e
      status
      verified

      Affirmation couverte : Feuille basse : parties, API d'état, interactions et limites d'implémentation documentées pour Vaul Drawer.

    • WAI-ARIA APG: Dialog Modal Pattern
      sourceId
      source-ui-aria-dialog-modal
      kind
      documentation
      canonicalUrl
      https://www.w3.org/WAI/ARIA/apg/patterns/dialog-modal/
      publisher
      W3C WAI
      sourceRevision
      http-last-modified:2026-07-09T07:07:35Z
      consultedAt
      2026-07-19
      license
      Non indiquée
      contentDigest
      sha256:4282d2eeb383c717ba41f52f0db1643fb3eb9acc33fa3879ef817e27c162453e
      status
      verified

      Affirmation couverte : Feuille basse : guide APG informatif pour le modèle dialogue modal : rôles, états, relations et interactions au clavier.

    • WAI-ARIA 1.2: Roles Model
      sourceId
      source-ui-wai-aria-roles
      kind
      standard
      canonicalUrl
      https://www.w3.org/TR/wai-aria-1.2/#roles
      publisher
      W3C WAI
      sourceRevision
      W3C-REC-wai-aria-1.2-20230606
      consultedAt
      2026-07-19
      license
      Non indiquée
      contentDigest
      sha256:c0fea16fc747779569ab754d2d25bca3e2b7e8a673b8ef5362aeb9ebc73a4849
      status
      verified

      Affirmation couverte : Feuille basse : définitions normatives des rôles ARIA et contraintes du rôle accessible indiqué.

    • WCAG 2.2: Focus Appearance
      sourceId
      source-ui-wcag-understanding-focus-appearance
      kind
      documentation
      canonicalUrl
      https://www.w3.org/WAI/WCAG22/Understanding/focus-appearance.html
      publisher
      W3C WAI
      sourceRevision
      http-last-modified:2026-07-02T10:07:49Z
      consultedAt
      2026-07-19
      license
      Non indiquée
      contentDigest
      sha256:fdcf316a1f0e3cc758eda9618322d132862124ff0a3f3b1a3acbf20daf804ff0
      status
      verified

      Affirmation couverte : Feuille basse : guide WCAG informatif pour évaluer l'apparence visible du focus clavier.

    • WHATWG HTML: The button element
      sourceId
      source-ui-html-button
      kind
      standard
      canonicalUrl
      https://html.spec.whatwg.org/multipage/form-elements.html#the-button-element
      publisher
      WHATWG
      sourceRevision
      http-last-modified:2026-07-19T13:52:46Z
      consultedAt
      2026-07-19
      license
      Non indiquée
      contentDigest
      sha256:418a8f9ce1e8690c6d458121120b0b3b7cd907aa92b2101b85f82f7e02d5ac2f
      status
      verified

      Affirmation couverte : Feuille basse : sémantique native normative, états, attributs et comportement du navigateur pour button.