Application Shell
Available since 1.4.0
Shell layout containers are used to construct the main template and application containers, providing structure to your application. The structure is divided into two layout components — shell
and app
.
- The
shell
layer is only for high-level containers: global header, app content, global footer and full-page overlay. - The
app
layer is for application-level containers: sidebar and page content.
These are dumb containers only concerned with placement with no effect on their contents. Simple responsive behaviors are built-in.
Container hierarchy
.fd-shell
: The outermost full-screen root wrapper.fd-shell__header
: Global header for shellbar component.fd-shell__header--fixed
: Modifier to make the header persistent (sticky)
.fd-shell__app
: The wrapper for the app content.fd-app
: The root application content container.fd-app__navigation
: Optional navigation container, use--horizontal
or--vertical
orientations.fd-app__main
: Main app content
.fd_shell__footer
: Optional global footer.fd-shell__footer--fixed
: Modifier to make the footer persistent (sticky)
.fd-shell__overlay
: Appended container for overlaying content.fd-overlay
: Common standalone component used to dim background
Application with only Top Bar
This is the main layout which provides the foundation for all page templates. Use this foundation when a full-width layout is needed, e.g., home page, launchpad, dashboard, etc.
Both the header and footer can be fixed by applying the .fd-shell--fixed
modifier to the .fd-shell
container, or each can be fixed individual by apply .fd-shell__header--fixed
or .fd-shell__footer--fixed
.
See the shellbar component which is used in the header container.
The app
containers here provide additional structure to application content.
Application with horizontal navigation
The sidebar is an optional app
layout container and should be used with applications with more than two levels of navigation.
Application with Sidebar
The sidebar is an optional app
layout container and should be used with applications with more than two levels of navigation.
Application with UI overlay
The overlay container is meant to accommodate any content that needs to be positioned on top of the UI. The is often included at the bottom of the DOM to overcome positioning and overflow styles of content container. There are two options for Application overlay.
.fd-overlay--modal
: Dims background and position the modal in the center of the viewport..fd-overlay--alert
: Does not dim the background and positions the alert component near the top of the viewport. Commonly thefd-overlay
class will be added to the overlay to dim the background and center the content, as with a modal. However, the container is generic enough to accommodate any full-UI takeover.
The container visibility can be toggled with the aria-hidden
attribute.