Porsche Design System Search Navigate to GitHub repository of Porsche Design System Open sidebar prev nextIntroduction Decision Tree Notifications
Table of Contents
Notifications are an important method of communicating with users and providing feedback.
Their main aim should be to help users perform a task and not necessarily interfere or get in the way of users while
using your product. Ensure your notifications are relevant, timely, and informative.
Keep in Mind: Highly frequented or disruptive Notifications can have a negative impact on the user's experience.
When to use#
In order to find the right notification type for your use case, we have defined some decision-making rules for you:
Go to the Decision Tree
Types/Behavior#
prev next
Components Placement Follow-up Action Hide Criticality StatesForm elements (Inline Validation) Below form element Yes Resolved Low Success, ErrorToast Bottom, Left No Automatically (6s) Low/Medium Neutral, SuccessInline Notification Before/After Content Yes Resolved/Dismiss Medium Neutral, Success, Warning, ErrorBanner Top, Center Yes Resolved/Dismiss Medium/High Neutral, Warning, ErrorModal Center Yes Resolved/Dismiss High Neutral, Warning, Error
Layer order#
Important: All elements are rendered on the browsers #top-layer
so a manual ordering of z-index will
have no effect, instead the browser renders the element on top of everything which was triggered to be shown last, meet the top layer: a solution to z-index:10000 .
prev next
Component Order Toast#top-layer
Modal#top-layer
Flyout#top-layer
Popover#top-layer
Banner#top-layer
References#
Kim Flaherty,
Indicators, Validations, and Notifications s
(Nielsen Norman Group, 2015)
Aurora Harley, Visibility of System Status (Nielsen Norman
Group, 2018)
Jakob Nielsen,
10 Usability Heuristics for User Interface Design (Nielsen
Norman Group, 1994)
Web Content Accessibility Guidelines
Global settingsTheme
ThemeMore information Changes the theme of the application and any Porsche Design System component. It's possible to choose between forced theme light and dark . It's also possible to use auto , which applies light or dark theme depending on the operating system settings automatically. // TODO: get rid of ARIA sprouting and use `elementInternals` API when AXE-CORE supports it: https://github.com/dequelabs/axe-core/issues/4259
Light// TODO: get rid of ARIA sprouting and use `elementInternals` API when AXE-CORE supports it: https://github.com/dequelabs/axe-core/issues/4259
Dark// TODO: get rid of ARIA sprouting and use `elementInternals` API when AXE-CORE supports it: https://github.com/dequelabs/axe-core/issues/4259
Auto (sync with operating system)DirectionMore information Changes the direction of HTML elements, mostly used on<html>
tag to support languages which are read from right to left like e.g. Arabic. // TODO: get rid of ARIA sprouting and use `elementInternals` API when AXE-CORE supports it: https://github.com/dequelabs/axe-core/issues/4259
LTR (left-to-right)// TODO: get rid of ARIA sprouting and use `elementInternals` API when AXE-CORE supports it: https://github.com/dequelabs/axe-core/issues/4259
RTL (right-to-left)// TODO: get rid of ARIA sprouting and use `elementInternals` API when AXE-CORE supports it: https://github.com/dequelabs/axe-core/issues/4259
AutoText ZoomMore information Changes the text size and values with unit rem
or em
relatively. This setting can be defined in browser settings for any website or by an application itself on<html>
tag. To achieve WCAG 2.2 AA compliance it's obligatory to support text zoom up to at least 200%. // TODO: get rid of ARIA sprouting and use `elementInternals` API when AXE-CORE supports it: https://github.com/dequelabs/axe-core/issues/4259
100%// TODO: get rid of ARIA sprouting and use `elementInternals` API when AXE-CORE supports it: https://github.com/dequelabs/axe-core/issues/4259
130%// TODO: get rid of ARIA sprouting and use `elementInternals` API when AXE-CORE supports it: https://github.com/dequelabs/axe-core/issues/4259
150%// TODO: get rid of ARIA sprouting and use `elementInternals` API when AXE-CORE supports it: https://github.com/dequelabs/axe-core/issues/4259
200%