<kbd>: The KBD Element
Last updated: 2026-10-13
<kbd>The KBD Element
Marks text the user is expected to enter via keyboard, often used in docs or shortcut hints.
| Category | Formatting |
|---|---|
| Content Model | Phrasing content |
| Allowed Parents | Any element that accepts phrasing content |
| Content Tag | Yes — requires closing </kbd> tag |
| Status | Standard |
📝 Syntax
<kbd>keyboard input</kbd>
▶ Example
Edit the code below and see the live result in the playground:
🌐 Browser Support
| Browser | |||||
|---|---|---|---|---|---|
| <kbd> | ✓ v1 | ✓ v12 | ✓ v1 | ✓ v1 | ✓ v1 |
| Supported in all major browsers | |||||
Tip: For key combinations, wrap each key in its own <kbd> and separate with + for clarity.
❓ FAQ
QWhat is the kbd tag for?
A
<kbd> marks user keyboard (or voice) input, such as <kbd>Ctrl</kbd> + <kbd>C</kbd> for the copy shortcut. Browsers render it in monospace by default; it is a staple of software documentation and technical tutorials.QCan kbd be nested?
AYes. Nesting
<kbd> distinguishes levels: the outer element represents the whole key combination and the inner ones individual keys, as in <kbd><kbd>Ctrl</kbd>+<kbd>S</kbd></kbd>, which CSS can frame as one unit.QWhat is the difference between kbd and code?
A
<code> marks code that is displayed, <kbd> marks input that the user types. In a tutorial, tell users to run <kbd>npm run dev</kbd> and show a snippet with <code>.