HTML та CSS для початківців

HTML & CSS для початківців (Частина 15): Форми (3)

Усі відео з уроку HTML та CSS для початківців.

Хоча форми HTML5 мають набагато більше функцій, ніж їх попередники, їх так само легко визначити.

HTML5 насправді має дуже багато нових типів полів. Підтримка від сучасних браузерів вже досить непогана. Проте я розгляну тільки такі типи полів, які є практично корисними.


Вибір кольору

Ви можете дати вашим відвідувачам можливість обрати колір.

HTML & CSS для початківців (Частина 15): Форми (3)

Коли клікнути на таке поле, відкриється типовий вибір кольору.

HTML & CSS для початківців (частина 15): Форми (3)



За допомогою цього можна обрати бажаний колір. Таке поле визначається за допомогою <input type="color" />.

Оберіть свій улюблений колір: <input type="color" name="lf" />



Полю завжди має бути наданий значення. Якщо його немає або він недійсний, автоматично вважається #000 (чорний).

Дата та час

Особливо щодо полів для дати та часу в HTML5 існує багато нововведень. Ці поля дійсно мають певний потенціал. Подумайте, наприклад, про те, які кроки потрібно виконати, щоб пропонувати вашим відвідувачам поле вибору дати. Зазвичай це не можливо без JavaScript (або також Flash). Завдяки HTML5 тепер це робиться набагато легше. Тут вам просто потрібно визначити поле введення типу date.

<input type="date" />



Для відображення та реалізації календаря виключно відповідальний браузер. Браузери повинні відображати відповідний віджет для календаря. У Google Chrome застосування виглядає наступним чином:

HTML та CSS для початківців (частина 15): Форми (3)

Через date визначається календар, за допомогою якого користувачі можуть вибрати потрібну дату. Після вибору дати вона автоматично вставляється в текстове поле.

Так само просто можна створити поле для введення часу. Для цього використовується поле типу time.

<input type="time" />



Через time браузери повинні показувати елементи управління для вибору часу.

HTML & CSS для початковців (частина 15): Форми (3)



Подібно просто працює week. Це дозволяє відобразити поле для вибору тижня.

<input type="week" />



Також можна відобразити поле для вибору місяця.

<input type="month" />



Обидва типи полів викликають відображення елементів управління, за допомогою яких можна налаштувати потрібні значення.

Під час використання time та date можна обирати лише дату або лише час, а datetime та datetime-local дозволяють комбінувати обидві варіанти.

У варіанті datetime відображаються поле для дати та поле для вибору часу поруч. (На даний момент datetime підтримується тільки Safari та Opera).

HTML & CSS для початківців (Частина 15): Форми (3)

Ви вже чули, що представлені в цьому розділі форми поки що не підтримуються всіма браузерами. Хто хоче використовувати їх, може скористатися відповідними рішеннями на JavaScript. Так, великі JavaScript-фреймворки, такі як jQuery і Dojo, пропонують відповідні скрипти. У jQuery UI це виглядає наступним чином:

<!DOCTYPE html>
<html>
<head>
  <link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
  <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
<script>
/* <![CDATA[ */
  $(document).ready(function() {
    $("#datepicker").datepicker();
  });
/* ]]> */
  </script>
</head>
<body>
   <input type="text" id="datepicker" />
</body>
</html>

Таким чином, ви залишаєтеся в безпеці, навіть якщо браузер не підтримує класичне поле date.

HTML та CSS для початківців (частина 15): Форми (3)

Поля для чисел

За допомогою number вводиться поле, призначене спеціально для введення чисел.

HTML та CSS для початківців (Частина 15): Форми (3)



У найпростішому випадку визначення поля number виглядає так:

<input type="number" />



Числа можуть бути введені в такі поля двома способами:

• через клавіатуру

• через елементи керування

Зазначенням додаткових атрибутів можна надати більш детального опису полям типу number. Спочатку це були два атрибути: min та max, за допомогою яких можна визначити діапазон значень полів.

min – найменше можливе значення

max – найбільше можливе значення

Ці два атрибути діють тільки стосовно елементів керування браузера. Вони не впливають на ручні введення користувачів через клавіатуру.

Обом атрибутам можуть бути надані цілі та дійсні числа.

Через атрибут step можна вказати крок, який повинен дотримуватися через елементи керування браузера.

<input type="number" min="0" max="8" step="2" />



Отже, в даному випадку можна вибрати значення 0, 2, 4, 6 та 8 тільки через елементи керування браузера.

Повзунок

Поля типу range дозволяють вибрати значення в межах визначеного діапазону.

HTML & CSS для початківців (Частина 15): Форми (3)

Браузери інтерпретують поле діапазону через повзунок.

<input type="range"  min="0" max="10" step="2" value="6">



Найменше можливе значення вказується через атрибут min. max вказує найбільше можливе значення. Якщо відсутні обидва атрибути min і max, браузери припускають значення 0 і 100.

Через step можна визначити послідовність кроків.

Створення поля пошуку

search на початковому етапі не має функції. Скоріше, цей тип поля є додатком до класичного текстового поля. Сенс search поля полягає лише в тому, що вони візуально відрізняються від звичайних текстових полів. Зазвичай зображення search полів повинні бути документовані браузерами.

<input type="search" />



Як це врешті-решті виглядатиме, залишається на виробниках. Додання атрибуту results - це хороше поєднання.

<input type="search" results="5" placeholder="Пошук..." />



Через results визначається, скільки попередніх пошукових запитів має бути показано в цьому полі.

Але увага: атрибут results не є частиною специфікації HTML5.