Description Displays elements in a full-viewport “lightbox” modal.
Required Script <script async custom-element="amp-lightbox" src="https://cdn.ampproject.org/v0/amp-lightbox-0.1.js"></script>
Supported Layouts nodisplay
Examples See AMP By Example's amp-lightbox sample.

Behavior

The amp-lightbox component defines child elements that display in a full-viewport overlay/modal. When the user taps or clicks an element (e.g., a button), the amp-lightbox ID referenced in the clicked element's on attribute triggers the lightbox to take up the full viewport and displays the child elements of the amp-lightbox.

Pressing the escape key on the keyboard closes the lightbox. Alternatively, setting the on attribute on one or more elements within the lightbox and setting its method to close closes the lightbox when the element is tapped or clicked.

<button on="tap:quote-lb">See Quote</button>
<amp-lightbox id="quote-lb" layout="nodisplay">
    <blockquote>"Don't talk to me about JavaScript fatigue" - Horse JS</blockquote>
    <button on="tap:quote-lb.close">Nice!</button>
</amp-lightbox>

Attributes

id (required)

A unique identifer for the lightbox.

layout (required)

Must be set to nodisplay.

scrollable (optional)

When the scrollable attribute is present, the content of the lightbox can scroll when overflowing the height of the lightbox.

Styling

You can style the amp-lightbox with standard CSS.

Actions

The amp-lightbox exposes the following actions you can use AMP on-syntax to trigger:

Action Description
open (default) Opens the lightbox.
close Closes the lightbox.

Validation

See amp-lightbox rules in the AMP validator specification.