Drawer
Side-panel drawer that slides in from the left or right.
Right drawer (default)
Drawers slide in from the right (or left) edge of the viewport. They use the same JS trigger attributes as modals - na-modal-open and na-modal-close.
<!-- Trigger -->
<button class="na-button na-button-primary" na-modal-open="#my-drawer">Open drawer</button>
<!-- Drawer markup (place at end of body) -->
<div class="na-drawer-overlay" id="my-drawer">
<div class="na-drawer" role="dialog" aria-modal="true">
<div class="na-drawer-header">
<h5 class="na-drawer-title">Drawer title</h5>
<button class="na-drawer-close" na-modal-close aria-label="Close">×</button>
</div>
<div class="na-drawer-body">...</div>
<div class="na-drawer-footer">
<button class="na-button na-button-ghost" na-modal-close>Cancel</button>
<button class="na-button na-button-primary">Apply</button>
</div>
</div>
</div>Left drawer
<div class="na-drawer na-drawer-left">...</div>Sizes
<div class="na-drawer na-drawer-s">...</div> <!-- 280px -->
<div class="na-drawer na-drawer-m">...</div> <!-- 400px (default) -->
<div class="na-drawer na-drawer-l">...</div> <!-- 560px -->
<div class="na-drawer na-drawer-xl">...</div> <!-- 720px -->Class reference
| Class / Attribute | Description |
|---|---|
na-drawer-overlay | Full-screen backdrop layer |
na-drawer | Side-panel container |
na-drawer-left | Slide in from left edge (default: right) |
na-drawer-s / md / lg / xl | Width sizes (280px / 400px / 560px / 720px) |
na-drawer-header / body / footer | Structural slots |
na-drawer-title | Drawer heading |
na-drawer-close | Close ? button |
na-modal-open="#id" | Trigger attribute (shared with Modal JS) |
na-modal-close | Close trigger attribute |
na-open | Applied by JS when drawer is open |