5 семантических элементов HTML, которые могут улучшить вашу веб-страницу без JavaScript или CSS

Семантические элементы HTML используются для придания смысла содержимому веб-страницы, и их можно использовать вместо JavaScript и CSS для улучшения функциональности и стиля веб-страницы. Однако важно отметить, что JavaScript и CSS имеют свои особенности использования и преимущества, и семантические элементы HTML не должны использоваться в качестве полной замены.

При этом вот несколько примеров семантических элементов HTML, которые можно использовать вместо JavaScript и CSS, с некоторыми примерами и некоторыми плюсами и минусами:

1. ‹детали› и ‹резюме›

<details> и <summary> используются вместе для создания расширяемого и сворачиваемого раздела контента на веб-странице. Элемент <details> содержит содержимое, которое можно развернуть или свернуть, а элемент <summary> используется для предоставления заголовка или заголовка раздела. Чтобы использовать эти элементы, просто оберните содержимое, которое должно быть расширяемым, внутри элемента <details>, а заголовок или название раздела укажите внутри элемента <summary>. По умолчанию содержимое внутри элемента <details> будет скрыто, а щелчок по элементу <summary> изменит видимость содержимого. Вот пример:

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

2. ‹прогресс›

Элемент <progress> используется для представления хода выполнения задачи или процесса на веб-странице. Его можно использовать для визуального отображения того, насколько далеко продвинулся пользователь в выполнении задачи или насколько продвинулся вперед в достижении конкретной цели.

Чтобы использовать элемент <progress>, просто укажите текущее значение прогресса, а также максимальное значение, представляющее завершение задачи или цели.

3. ‹метр›

Элемент <meter> используется для отображения значения в пределах известного диапазона на веб-странице. Его можно использовать для обозначения измерения, такого как ход выполнения задачи, уровень выполнения цели или оставшееся количество ресурса.

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

4. ‹список данных›

Элемент <datalist> используется для предоставления списка предопределенных параметров для ввода формы на веб-странице. Его можно использовать для предложения значений для полей формы на основе ввода пользователя, что упрощает заполнение формы пользователями.

Чтобы использовать элемент <datalist>, просто укажите список опций внутри элемента, используя элементы <option>. Вот пример:

В этом примере элемент <input> с id="fruits-input" связан с элементом <datalist> с id="fruits", поэтому, когда пользователь вводит в поле ввода, появится список предлагаемых вариантов на основе значений, указанных в <datalist>.

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

5. ‹диалог›

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

Одним из преимуществ использования элемента <dialog> является то, что он обеспечивает семантическую структуру диалогового окна, упрощая его понимание и навигацию для вспомогательных технологий, таких как программы чтения с экрана. Когда вы используете элемент <dialog>, браузер знает, что это диалоговое окно, и может предоставить соответствующие специальные возможности, такие как управление фокусом и навигация с помощью клавиатуры.

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

Чтобы использовать элемент <dialog>, вы можете обернуть содержимое, которое хотите отобразить в диалоговом окне, в элемент <dialog>. Конечно, здесь вам понадобится немного JavaScript, чтобы открыть и закрыть диалоговое окно, установив для атрибута open значение true или false соответственно. Вы также можете добавить кнопки в диалоговое окно, используя элемент <button>, и обрабатывать их события нажатия с помощью JavaScript. Вот пример:

Заключение

Подводя итог, несмотря на то, что CSS может настраивать внешний вид определенных элементов, а JavaScript может улучшать их функциональность и интерактивность, стоит отметить, что основная функциональность этих элементов по-прежнему может быть достигнута без каких-либо сценариев или стилей. Элемент ‹dialog› является единственным исключением из этого правила. В общем, важно понимать базовую функциональность HTML-элементов. Любые дополнительные стили или сценарии должны служить для улучшения взаимодействия с пользователем, а не препятствовать доступности или удобству использования контента.