Spec-Zone.ru › HTML

<kbd>: Элемент ввода с клавиатуры

Базовая линия Широко доступно

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузера. Она доступна во всех браузерах с июля 2015 года.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Элемент <kbd> HTML представляет собой фрагмент текстового содержимого, обозначающего текстовый ввод с клавиатуры, голосового ввода или любого другого устройства ввода текста. По соглашению, пользовательский агент по умолчанию отображает содержимое элемента <kbd> с использованием шрифта по умолчанию с фиксированным размером, хотя это не предписано стандартом HTML.

Попробуйте

<kbd> может быть вложен в различные комбинации с элементом <samp> (Образец вывода) для представления различных форм ввода или вывода на основе визуальных подсказок.

Атрибуты

Этот элемент включает только глобальные атрибуты.

Примечания по использованию

Другие элементы могут использоваться совместно с <kbd> для представления более конкретных сценариев:

  • Вложение элемента <kbd> внутри другого элемента <kbd> представляет собой фактическую клавишу или другой элемент ввода как часть более крупного элемента ввода. См. Представление нажатий клавиш внутри элемента ввода ниже.
  • Вложение элемента <kbd> внутри элемента <samp> представляет собой ввод, который был повторно отображён пользователю системой. См. Повторный ввод ниже для примера.
  • Вложение элемента <samp> внутри элемента <kbd>, с другой стороны, представляет ввод, основанный на тексте, представленном системой, таком как имена меню и пунктов меню или имена кнопок, отображаемых на экране. См. пример в разделе Представление вариантов ввода на экране ниже.

Примечание: Вы можете определить пользовательский стиль для переопределения выбора шрифта по умолчанию браузера для элемента <kbd>, хотя предпочтения пользователя могут потенциально переопределить ваш CSS.

Примеры

Базовый пример

html
<p>
  Use the command <kbd>help mycommand</kbd> to view documentation for the
  command "mycommand".
</p>

Результат

Представление нажатий клавиш внутри элемента ввода

Чтобы описать ввод, состоящий из нескольких нажатий клавиш, вы можете вложить несколько элементов <kbd>, при этом внешний элемент <kbd> представляет весь ввод, а каждая отдельная клавиша или компонент ввода заключён в свой собственный элемент <kbd>.

Без стилей

Сначала посмотрим, как это выглядит просто в HTML.

HTML
html
<p>
  You can also create a new document using the
  <kbd><kbd>Ctrl</kbd>+<kbd>N</kbd></kbd> keyboard shortcut.
</p>

Это оборачивает всю последовательность нажатий клавиш во внешний элемент <kbd>, а затем каждую отдельную клавишу в свой собственный, в порядке обозначения компонентов последовательности.

Примечание: Вам не нужно делать всю эту обёртку; вы можете упростить её, убрав внешний элемент <kbd>. Другими словами, упрощение до простого <kbd>Ctrl</kbd>+<kbd>N</kbd> будет вполне допустимо.

Однако в зависимости от вашего стиля, вам может быть полезно сделать подобное вложение.

Результат

Вывод выглядит так без применённого стиля:

Со стилями

Мы можем сделать это более понятным, добавив немного CSS:

CSS

Мы добавляем новый селектор для вложенных элементов <kbd>, kbd>kbd, который мы можем применить при отображении клавиш клавиатуры:

css
kbd > kbd {
  border-radius: 3px;
  padding: 1px 2px 0;
  border: 1px solid black;
}
HTML

Затем мы обновляем HTML, чтобы использовать этот класс для клавиш в выводе:

html
<p>
  You can also create a new document by pressing the
  <kbd><kbd>Ctrl</kbd>+<kbd>N</kbd></kbd> shortcut.
</p>
Результат

Результат именно тот, что мы и хотим!

Повторный ввод

Вложение элемента <kbd> внутри элемента <samp> представляет ввод, который был повторно отображён пользователю системой.

html
<p>
  If a syntax error occurs, the tool will output the initial command you typed
  for your review:
</p>
<blockquote>
  <samp><kbd>custom-git ad my-new-file.cpp</kbd></samp>
</blockquote>

Результат

Представление вариантов ввода на экране

Вложение элемента <samp> внутри элемента <kbd> представляет ввод, основанный на тексте, представленном системой, таком как имена меню и пунктов меню или имена кнопок, отображаемых на экране.

Например, вы можете объяснить, как выбрать опцию "Новый документ" в меню "Файл", используя HTML, который выглядит так:

html
<p>
  To create a new file, choose the <kbd><kbd><samp>File</samp></kbd>
  ⇒<kbd><samp>New Document</samp></kbd></kbd> menu option.
</p>

<p>
  Don't forget to click the <kbd><samp>OK</samp></kbd> button to confirm once
  you've entered the name of the new file.
</p>

Это демонстрирует интересное вложение. Для описания пункта меню весь ввод заключён в элемент <kbd>. Затем внутри него и имя меню, и имя пункта меню заключены в <kbd> и <samp>, указывая на ввод, выбранный из элемента управления на экране.

Результат

Техническое описание

Категории контента Контент потока, фразовый контент, осязаемый контент.
Разрешённый контент Фразовый контент.
Пропуск тега Нет, обязательны как открывающий, так и закрывающий теги.
Разрешённые родительские элементы Любой элемент, принимающий фразовый контент.
Неявная роль ARIA Нет соответствующей роли
Разрешённые роли ARIA Любые
Интерфейс DOM HTMLElement

Спецификации

Спецификация
Стандарт HTML
# the-kbd-element

Совместимость с браузерами

Рабочие столы Мобильные
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari в IOS Samsung Internet WebView Android
kbd 1 12
1До Firefox 4 создание элемента <kbd> приводило к ошибочному объекту HTMLSpanElement, а не к ожидаемому HTMLElement.
15 ≤4 18 4 14 ≤3.2 1.0 4.4

См. также

  • <code>

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/kbd

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API