The modal component can be used to overlay an area of the screen which can contain a prompt, dialog or interaction.

On p-modal set display to display:flex or display:none to toggle the visibility of the modal.

Optional footer element with a p-modal__footer class name can be added to the modal dialog to provide additional options.


To import just this component into your project, copy the snippet below and include it in your main Sass file.

@import 'patterns_modal';
@include vf-p-modal;

For more information see Customising Vanilla in your projects, which includes overrides and importing instructions.


For any elements that launch a modal, please ensure that the label contains a trailing ellipsis , e.g. "Launch modal…". This is a convention used to indicate that the element launches a dialog.

When a modal is launched, focus should be set within the modal element, using JavaScript.


For more information view the modal design spec which includes the specification in markdown format and a PNG image.