Monstera

Sheet

La surface superposée : feuille qui monte du bas, ou modale qui grandit sur place. Elle se pose au-dessus d'un Overlay, qui lui fournit le voile.

Utilisation

import { Sheet } from "@monstera/ui"

Sheet et modal

La feuille s'arrondit en haut seulement et affiche une poignée, la modale s'arrondit partout. Un titre remplace la poignée par un entête, et un onClose y ajoute la croix.

Fonds

Le dégradé est un halo cyan-menthe flouté en haut de la surface. Il repeint aussi le bouton fermer, qui passe du gris au navy pour tenir sur le halo.

Ouverture réelle

Les aperçus ci-dessus sont montés en permanence et ne jouent leur entrée qu'au chargement. Ici la feuille monte et redescend pour de bon, portée par un Overlay aligné en bas.

Accessibilité

Posée sur un Overlay, la feuille est modale :

  • elle porte le nom de son title, rendu en titre de niveau 2. Sans title, passer aria-label, ou aria-labelledby vers le titre placé dans le contenu : le type l'exige ;
  • title="" garde l'entête et sa croix sans afficher de titre : nommer alors la feuille par aria-labelledby ou aria-label ;
  • à l'ouverture, le focus entre dans la feuille, sur son premier élément focalisable ;
  • Tab et Maj+Tab bouclent dans la feuille ;
  • Échap appelle onClose ;
  • à la fermeture, le focus revient sur l'élément qui avait ouvert la feuille.

Montée dans le flux de la page, comme dans les deux premiers aperçus, elle ne prend pas le focus et n'est pas annoncée comme modale.

À la charge de l'intégrateur : fournir onClose, sans quoi Échap ne fait rien, et garder une sortie dans le contenu d'une feuille sans croix.

API

Prop

Type

Sur cette page