MasterDetailLayout
Description
<vaadin-master-detail-layout> is a web component for building UIs with a master
(or primary) area and a detail (or secondary) area that is displayed next to, or
overlaid on top of, the master area, depending on configuration and viewport size.
Styling
The following shadow DOM parts are available for styling:
| Part name | Description |
|---|---|
backdrop |
Backdrop covering the master area in the overlay mode |
master |
The master area |
detail |
The detail area |
The following state attributes are available for styling:
| Attribute | Description |
|---|---|
expand |
Set to master, detail, or both. |
orientation |
Set to horizontal or vertical depending on the orientation. |
has-detail |
Set when the detail content is provided and visible. |
overflow |
Set when columns don't fit and the detail is shown as an overlay. |
overlay-containment |
Set to layout or viewport. |
The following custom CSS properties are available for styling:
| Custom CSS property |
|---|
--vaadin-master-detail-layout-border-color |
--vaadin-master-detail-layout-border-width |
--vaadin-master-detail-layout-detail-background |
--vaadin-master-detail-layout-detail-shadow |
--vaadin-overlay-backdrop-background |
See Styling Components documentation.
Properties
detailSize
Type: string | null | undefined
Size (in CSS length units) to be set on the detail area in the CSS grid layout. If there is not enough space to show master and detail areas next to each other, the detail area is shown as an overlay. Defaults to 15em.
expand
Type: "master" | "detail" | "both"
Controls which column(s) expand to fill available space.
Possible values: 'master', 'detail', 'both'.
Defaults to 'both'.
masterSize
Type: string | null | undefined
Size (in CSS length units) to be set on the master area in the CSS grid layout. If there is not enough space to show master and detail areas next to each other, the detail area is shown as an overlay. Defaults to 30em.
noAnimation
Type: boolean
When true, the layout does not use animated transitions for the detail area.
orientation
Type: "horizontal" | "vertical"
Define how master and detail areas are shown next to each other,
and the way how size and min-size properties are applied to them.
Possible values are: horizontal or vertical.
Defaults to horizontal.
overlayContainment
Type: "layout" | "viewport"
Defines the containment of the detail area when the layout is in
overlay mode. When set to layout, the overlay is confined to the
layout. When set to viewport, the overlay is confined to the
browser's viewport. Defaults to layout.
overlaySize
Type: string | null | undefined
Size (in CSS length units) for the detail area when shown as an
overlay. When not set, falls back to detailSize. Set to 100%
to make the detail cover the full layout.
slotStyles
Type: string[]
Events
backdrop-click
Type: CustomEvent
backdrop-click Fired when the user clicks the backdrop in the overlay mode.
detail-escape-press
Type: CustomEvent
detail-escape-press Fired when the user presses Escape in the detail area.