Skip to content

CSS: tray

.instui-tray — Ένα πάνελ καρφωμένο στην άκρη που σύρεται από οποιαδήποτε πλευρά· ένα εγγενές [popover] ή <dialog>.

Οι τοποθετήσεις start/end επιλύονται σε σχέση με το inset-inline (λογικό, ευαίσθητο στην κατεύθυνση)· η μετασχηματισμός slide-in καθρεφτίζεται αυτόματα κάτω από έναν πρόγονο [dir="rtl"], οπότε δεν απαιτείται επιπλέον σήμανση για διατάξεις δεξιά-προς-αριστερά.

Source: tray.css

Προσβασιμότητα

Το tray είναι επιφάνεια διαλόγου ή popover, επομένως ονομάστε το με aria-label ή aria-labelledby, και ο έλεγχος κλεισίματος φέρει aria-label (το .instui-close-button στο παράδειγμα χρησιμοποιεί aria-label="Close").

Χρήση

css
@import "@pantoken/components/components.css";
@import "@pantoken/components/tray.css";

Παραδείγματα

html
<div class="instui-tray -placement-end -size-sm">
  <span class="instui-heading -level-h3">Filters</span>
  <p class="-size-sm">A tray slides in from the start edge and fills the viewport height.</p>
</div>
<button class="instui-button -toggle">toggle tray</button>

Δομή

text
.instui-tray
  close-button (component, 0..1)
  ‹content›
flowchart TD n0[".instui-tray"]:::cssdoc-root n1(["close-button"]):::cssdoc-component n2[/"‹content›"/]:::cssdoc-slot n0 -.->|0..1| n1 n0 --> n2 click n1 "/api/css/close-button.md" classDef cssdoc-root stroke-width:1px; classDef cssdoc-part stroke-width:1px; classDef cssdoc-slot stroke-width:1px; classDef cssdoc-component stroke-width:1px;

Τροποποιητές

ΤροποποιητήςΠεριγραφή
.-placement-bottomΚαρφώστε στην κάτω άκρη.
.-placement-endΚαρφώστε στην άκρη του end (inline-end).
.-placement-start(προεπιλογή) Καρφώστε στην άκρη του start (inline-start).
.-placement-topΚαρφώστε στην πάνω άκρη.
.-size-largeΜεγάλο. Μακροσκελής συνώνυμο του -size-lg.
.-size-lgΜεγάλο.
.-size-md(προεπιλογή) Μεσαίο.
.-size-medium(προεπιλογή) Μεσαίο. Μακροσκελές ψευδώνυμο του -size-md.
.-size-regularΚαταργημένο — use .-size-md.
.-size-smΜικρό.
.-size-smallΜικρό. Μακροσκελής συνώνυμο του -size-sm.
.-size-x-largeΕξαιρετικά μεγάλο. Μακροσκελής συνώνυμο του -size-xl.
.-size-x-smallΕξαιρετικά μικρό. Μακροσκελής συνώνυμο του -size-xs.
.-size-xlΕξαιρετικά μεγάλο.
.-size-xsΕξαιρετικά μικρό.

Συνθήκες

ΤύποςΕρώτημαΠεριγραφή
supports(transition-behavior: allow-discrete)

Καταναλωμένα tokens

TokenΤύποςΤιμή
--instui-component-tray-background-color<color>LightDarklight-dark(#ffffff, #1C222B)
--instui-component-tray-border-color<color>LightDarklight-dark(#E8EAEC, #334450)
--instui-component-tray-border-width<length>0.0625rem
--instui-component-tray-padding<length>1.5rem
--instui-component-tray-width-lg<length>48em
--instui-component-tray-width-md<length>30em
--instui-component-tray-width-sm<length>20em
--instui-component-tray-width-xl<length>62em
--instui-component-tray-width-xs<length>16em
--instui-component-tray-z-index<integer>9999
--instui-elevation-topmostnone | <shadow>#
--tray-slide-x-100%
--tray-slide-y0%

Υποστήριξη προγράμματος περιήγησης

  • Ανοίγει με το εγγενές API [popover] και @starting-style; το slide-in βρίσκεται πίσω από φρουρά @supports (transition-behavior: allow-discrete), οπότε τα προγράμματα περιήγησης που δεν έχουν αυτή τη δυνατότητα ανοίγουν το tray, απλώς χωρίς το slide.

Υποσυστατικά

Σχετιζόμενα

  • modal — Το ίδιο πρότυπο επιπέδου επικάλυψης που απορρίπτεται, κεντραρισμένο αντί για καρφωμένο στην άκρη.
  • popover — Η γενική επιφάνεια επιπέδου κορυφής πάνω στην οποία βασίζεται αυτό.