About this set
One white card on a deep teal gradient that holds both forms. A pill-shaped tab bar at the top switches between Log in and Create account. The login panel asks for email and password and links to password recovery; the sign-up panel asks for full name, email and a new password, shows an At least 8 characters hint under the password field, and links to the terms. The tabs follow the ARIA tabs pattern: a tablist with two tab buttons, each controlling a tabpanel, with aria-selected on the active tab. A short script handles clicks and the Left, Right, Home and End keys, and only the selected tab is in the Tab order, so keyboard users move straight from the tabs into the form. Use it for products where new and returning users arrive at the same page. The sign-up password uses autocomplete=”new-password” and minlength=”8″, and its hint is linked with aria-describedby so it is read with the field. The Bootstrap version builds the tab bar from .nav-pills and uses .form-text for the hint; the Tailwind version styles the active tab with aria-selected: utilities.
What’s included
- ARIA tablist with arrow key, Home and End support
- Separate login and sign-up forms in one card
- Password rule shown as visible hint linked with aria-describedby
- autocomplete values for name, username, email and new-password
- Bootstrap version built on .nav-pills
Accessibility
Tabs expose role, selected state and the panel they control, and each panel is labelled by its tab. Arrow keys move between tabs and switch panels. Every field has a visible label, and the new password hint is announced with the field. Tabs, buttons and links show a 2px teal outline on keyboard focus; transitions switch off under prefers-reduced-motion.
Customise it
Change --tb-teal, --tb-teal-dark and --tb-line on .tb. In Bootstrap the tab colours are --bs-nav-pills-* variables on .nav-pills; in Tailwind edit the --color-tb-* theme colours.




















