Login enables users to access an application or site by entering a user ID and password or via Single Sign On (SSO).
These are the core elements in a login. The sizing and alignment can vary according to how it needs to be presented.
When a login screen is necessary as the first step in a user’s journey it should be straightforward and frictionless, to improve user experience, protect user data and initiate a positive experience of your product.
Only include the relevant minimum elements required for logging in.
Include the Pecten with appropriate spacing, any product sub-brand and approved brand colours. Read the Pecten guidelines.
Allow users to use their email rather than create a username to make logging in easier.
If you include ‘log in’ and 'sign up' or ‘register’ options on one screen, make them separate, distinct and accurate.
Design login buttons to be visually different to ‘sign up’ (registration) buttons.
Write microcopy on button labels and links that says precisely what will happen next.
When a password is required, aim to:
This automatically directs users to the relevant login sequence, according to how they choose to log in, e.g. single sign-on (SSO) or with their email and password.
This allows users to log in to multiple applications and sites with a single authentication, so they don’t need to remember usernames and passwords.
Positive validation should be included in your login pattern to reassure users that they have logged in successfully.
Negative validation should occur when a user’s information is incorrect, often in the case of:
Follow this by showing the user an error message that helps them to fix the problem.
Show an error message when there is a validation error. Write a message that explains what went wrong and how to fix it.
aria-describedby.Write log in as two words in the title or labels. It’s an action.
Never write ‘login’ as one word in the title or labels.
Read content guidance for writing error messages.
Shell DS components are programmatically determinable with appropriate semantic markup and are designed to meet colour contrast requirements. If you’re not using Shell DS code, you will need to cover the accessibility considerations for each component in this pattern.
Using an asterisk to indicate a required state in a form field, e.g. email and password, requires it to be defined at the start of the form, e.g. contained within a ❬abbr❭ element. This allows the asterisk character to be styled larger than the default so that it can be seen by users with impaired vision.
Every effort has been made to ensure that the Shell Design System follows accessibility best practice.
The Shell DS React framework incorporates keyboard operation to support the widest variety of assistive technologies and devices. For any future frameworks other than React, accessibility will need to be reviewed.
Help us to help you by contacting the Accessibility team for support and information regarding any questions relating to accessibility.
Is this page useful for you?
Your feedback helps to improve our documentation.