В процессе навигации по сайтам пользователь, в основном, только щёлкает по ссылкам чтобы перемещаться по веб-страницам.
Но понятно, что пользователю иногда требуется обеспечить собственные поля ввода. Эти виды взаимодействия включают в себя:
Чтобы приспособиться к этим потребностям, HTML предлагает интерактивные элементы управления формы:
Эти элементы управления задействуют разные теги HTML, но большинство из них использует тег <input>. Поскольку это самозакрывающий элемент, тип поля определяется его атрибутом type:
<form> является блочным элементом, который определяет интерактивную часть веб-страницы. Как результат, все элементы управления (такие как <input>, <textarea> или <button>) должны находиться внутри элемента <form>.
Два атрибута HTML необходимы:
Как правило, информация формы посылается на сервер. Как эти данные затем будут обработаны выходит за рамки данного руководства.
Подумайте о форме как о наборе элементов управления, которые работают вместе, чтобы выполнить одну операцию. Если вы написали форму входа на сайт, у вас могло быть три поля:
Эти три элемента HTML будут заключены внутри одной формы <form action=»/login» method=»POST»>.
Вы можете аналогично добавить форму регистрации на той же HTML-странице, в отдельном элементе <form>.
Почти всем формам требуется текстовый ввод от пользователей, чтобы ввести своё имя, адрес электронной почты, пароль, адрес и др. Текстовые поля формы приходят в разных вариантах.
Хотя эти поля очень похожи и позволяют пользователям вводить текст любого рода (даже неправильный), их тип обеспечивает специфическую семантику для ввода, определяя, какую информацию поле должно содержать.
Браузеры могут впоследствии немного изменить интерфейс элемента управления, чтобы повысить интерактивность или подсказать, какое содержимое ожидается.
К примеру, поле для пароля показывает точки вместо символов. А поле для чисел позволяет увеличивать/уменьшать значение с помощью клавиш вверх и вниз.
Текстовые поля могут отображать подсказывающий текст, который исчезнет, как только будет введён некоторый текст.
<input type="text" placeholder="Введите своё имя">
Если вы начинаете набирать что-то, то увидите как текст «Введите своё имя» исчезнет.
Так как элементы формы сами по себе не очень описательны, им, как правило, предшествует текстовая метка.
<label>Email</label>
<input type="email">
В то время как placeholder уже обеспечивает некоторую подсказку о том, какое ожидается содержание, метки имеют преимущество оставаясь видимыми в любое время и могут использоваться наряду с другими типами элементов формы, таких как флажки или переключатели.
Хотя вы можете применять короткие абзацы для описания элементов формы, использование <label> является семантически более правильным, потому что они существуют только в формах. <label> также может быть связан с определённым элементом формы с помощью атрибута for, соответствующему значению id у поля.
<label for="first_name">Имя</label>
<input id="first_name" type="text">
При щелчке по метке фокус переходит к текстовому полю и помещает курсор внутрь него. Пока эта связка кажется бесполезной, но пригодится с флажками и переключателями.
Флажки — это элементы формы, которые имеют только два состояния: включено или выключено. Они в основном позволяют пользователю сказать: «Да» или «Нет» для чего-то.
<input type="checkbox"> Запомнить меня
Поскольку может оказаться сложно щёлкнуть по небольшому флажку, рекомендуется поместить флажок и его описание внутрь <label>.
<label>
<input type="checkbox"> Я согласен с условиями
</label>
Вы можете щёлкнуть по тексту «Я согласен с условиями» чтобы переключить флажок.
По умолчанию флажок выключен. Вы можете пометить его включенным, просто используя атрибут checked.
<label>
<input type="checkbox" checked> Использовать мой платёжный адрес
</label>
Вы можете предоставить пользователю список вариантов на выбор с помощью переключателей.
Для работы этого элемента формы, ваш HTML-код должен сгруппировать список переключателей вместе. Это достигается с помощью одного и того же значения для атрибута name:
Поскольку все переключатели используют одинаковое значение атрибута name (в данном случае значение status), выбор одного из вариантов отменит все остальные. Переключатели являются взаимоисключающими.
Хотя флажок существует сам по себе, переключатели могут появляться только в виде списка (что означает, по меньшей мере два варианта).
Кроме того, щелчок по флажку является произвольным, в то время как выбор одного из переключателей является обязательным. Вот почему невозможно выключить переключатель, если выбрать ближайший вариант. В конце концов, всегда выбирается один из переключателей.
Если количество вариантов для выбора занимает слишком много места, вы можете воспользоваться выпадающими меню <select>.
Они работают подобно переключателям, отличается только компоновка.
Если добавить атрибут multiple, вы можете предоставить возможность выбрать несколько вариантов.
Выберите несколько вариантов посредством удержания Ctrl (или ⌘) и щелчка. Это может быть хорошей альтернативой применению несколько флажков в строке.
Также доступны и другие элементы форм, но мы рассмотрели наиболее используемые.
Запись на курс Основы HTML
Заявка на бесплатную лекцию