#html #semantic-markup
#HTML #семантическая разметка
Вопрос:
Хорошо, я в значительной степени понимаю тег fieldset в html, за исключением двух ситуаций:
-
Должен ли я использовать его, если внутри него будет только один элемент (в конце концов, он предназначен для «группировки» элементов формы)
-
Следует ли ее использовать для инкапсуляции кнопки отправки формы? Обычно я использую div для этого, хотя я постоянно задаюсь вопросом, был бы лучше набор полей.
Заранее спасибо
Ответ №1:
-
Это действительно вызов суждения. Обычно я бы не использовал это, если бы была только одна семантическая группа элементов, поскольку группа неявна, особенно если был только один элемент. Хорошим примером семантического
fieldset
использования может быть группирование полей ввода контактных данных пользователя отдельно от данных его кредитной карты. -
На самом деле вам не следует использовать
div
илиfieldset
для вложения кнопки отправки. Кнопка отправки относится ко всей форме, а не только к определенным наборам полей. Если вы просто хотите, чтобы устройство разместило кнопку отправки в отдельной строке, вам следует рассмотреть ее стилизацию с помощью CSS.
Комментарии:
1. проблема с кнопкой отправки заключается в том, что она должна быть заключена во что-то для проверки
2. @David: Это не тот случай. Звучит так, как будто у вас есть ошибка в другом месте вашей разметки, которая выдает вводящие в заблуждение ошибки проверки в отношении кнопки отправки. Можете ли вы опубликовать код или ссылку на свой сайт?
Ответ №2:
вы всегда должны использовать элемент fieldset вместе с соответствующим элементом легенды. они добавляют семантическую информацию для пользователей, но, что более важно, повышают доступность для пользователей с ограниченными возможностями. я не уверен, что это за элемент, который вы используете, но я предполагаю, что это элемент управления формой, и все они должны быть сопоставлены с элементами label, обеспечивающими аналогичные преимущества, что и элементы fieldset legend. элементы управления формой отправки обычно не должны находиться в наборе полей, поскольку набор полей обеспечивает структуру для сгруппированных элементов управления. я хочу сказать, что я где-то читал, что это плохая практика, но я не могу найти ее сразу, однако я оставляю их.