web-components-aria-modal
Accessible modal with Web Components
Install(ESM)
yarn add web-components-aria-modal
or npm i web-components-aria-modal
Install(UMD)
Usage
import 'web-components-aria-modal';
Append Your Modal
You can append your modal inside aria-modal with slot
. If you use slot
, you can use accessible feature for modal.
Please see following example.
<aria-modal>
<div name="modal">
</div>
</aria-modal>
Style
Using css variables, you can apply your style to <aria-modal>
.
aria-modal {
--backdrop-display: block;
--backdrop-color: rgba(0, 0, 0, 0.3);
--backdrop-position: absolute;
--backdrop-z-index: 0;
}
Props
Warning
If the active class is not set to aria-modal
, it may flicker when reloaded on browser. When you set active class, you should set your modal to display: none;
and you should set your active class to display: block; /* or flex, inline-block, etc... */
.
This problem is occurred by rendering process for Web Components. Your modal is assigned to slot
element in aria-modal
, and slot
is rendered after JavaScript file(and Web Components) have loaded. That is, this problem is occurred by your modal is rendered without your modal is assigned to slot.
Example
https://github.com/github/clipboard-copy-element/tree/master/examples