naUI
Components Components

Modal

Centred dialog with focus trapping and scroll lock.

Basic modal

Modals are triggered by na-modal-open and closed with na-modal-close.

<!-- Trigger -->
<button class="na-button na-button-primary" na-modal-open="#my-modal">Open</button>

<!-- Modal markup (place at end of body) -->
<div class="na-modal-overlay" id="my-modal">
  <div class="na-modal" role="dialog" aria-modal="true">
    <div class="na-modal-header">
      <h5 class="na-modal-title">Title</h5>
      <button class="na-modal-close" na-modal-close aria-label="Close">&times;</button>
    </div>
    <div class="na-modal-body">...</div>
    <div class="na-modal-footer">
      <button class="na-button na-button-ghost" na-modal-close>Cancel</button>
      <button class="na-button na-button-primary">Confirm</button>
    </div>
  </div>
</div>

Sizes

<div class="na-modal na-modal-s">...</div>
<div class="na-modal na-modal-m">...</div>   <!-- default -->
<div class="na-modal na-modal-l">...</div>
<div class="na-modal na-modal-xl">...</div>
<div class="na-modal na-modal-full">...</div>

Class reference

Class / AttributeDescription
na-modal-overlayFull-screen backdrop layer
na-modalCentred dialog box
na-modal-xs / s / m / l / xl / 2xl / 3xl / fullWidth sizes
na-modal-header / body / footerStructural slots
na-modal-titleDialog heading
na-modal-closeClose ? button
na-modal-footer-start / --betweenFooter alignment
na-modal-open="#id"Trigger attribute
na-modal-closeClose trigger attribute