КАК

Как домой

Меню

Панель значков Значок меню Аккордеон Вкладки Вертикальные вкладки Заголовки вкладок Вкладки на всю страницу Вкладки при наведении Верхняя навигация Отзывчивый Topnav Панель навигации с иконками Меню поиска Панель поиска Фиксированная боковая панель Навигация по страницам Адаптивная боковая панель Полноэкранная навигация Меню вне холста Кнопки Hover Sidenav Боковая панель с иконками Горизонтальное меню прокрутки Вертикальное меню Нижняя навигация Отзывчивая нижняя навигация Навигационные ссылки на нижней границе Ссылки меню с выравниванием по правому краю Ссылка на меню по центру Ссылки меню одинаковой ширины Фиксированное меню Полоса слайда вниз при прокрутке Скрыть панель навигации при прокрутке Уменьшить панель навигации при прокрутке Липкая панель навигации Панель навигации на изображении Выпадающие списки при наведении Нажмите «Раскрывающиеся списки». Каскадное выпадающее меню Выпадающий список в Topnav Выпадающий список в Сиденаве Выпадающий список Resp Navbar Меню поднавигации Выпадающий Мега Меню Мобильное меню Меню штор Свернутая боковая панель Свернутая боковая панель Пагинация Панировочные сухари Группа кнопок Вертикальная группа кнопок Липкая социальная панель Навигация по таблеткам Адаптивный заголовок

Картинки

Слайд-шоу Галерея слайд-шоу Модальные изображения Лайтбокс Адаптивная сетка изображений Сетка изображений Галерея вкладок Наложение изображения Слайд с наложенным изображением Масштаб наложения изображения Заголовок наложения изображения Значок наложения изображения Эффекты изображения Черно-белое изображение Текст изображения Текстовые блоки изображения Прозрачный текст изображения Полное изображение страницы Форма на изображении Изображение героя Размытие фонового изображения Изменить Bg при прокрутке Параллельные изображения Округлые изображения Изображения аватара Адаптивные изображения Центрировать изображения Миниатюры Граница вокруг изображения Встретить команду Прилипшее изображение Перевернуть изображение Встряхнуть изображение Портфолио Галерея Портфолио с фильтрацией Увеличение изображения Стекло лупы изображения Ползунок сравнения изображений Фавикон

Кнопки

Кнопки оповещения Кнопки контура Кнопки разделения Анимированные кнопки Затухающие кнопки Кнопка на изображении Кнопки социальных сетей Читать дальше Читать меньше Кнопки загрузки Кнопки загрузки Кнопки таблетки Кнопка уведомления Кнопки со значками Кнопки «Следующая/предыдущая» Кнопка «Дополнительно» в навигации Кнопки блокировки Текстовые кнопки Круглые кнопки Кнопка прокрутки вверх

Формы

Форма входа Форма регистрации Форма оформления заказа Форма обратной связи Форма входа через социальную сеть Регистрационная форма Форма с иконками Новостная рассылка Сложенная форма Отзывчивая форма Всплывающая форма Встроенная форма Очистить поле ввода Скрыть цифровые стрелки Скопировать текст в буфер обмена Анимированный поиск Кнопка поиска Полноэкранный поиск Поле ввода в панели навигации Форма входа в Navbar Пользовательский флажок/радио Пользовательский выбор Переключить переключатель Установите флажок Обнаружение Caps Lock Кнопка триггера при входе Проверка пароля Переключить видимость пароля Многоступенчатая форма Автозаполнение Отключить автозаполнение Отключить проверку орфографии Кнопка загрузки файла Проверка пустого ввода

Фильтры

Список фильтров Таблица фильтров Фильтрующие элементы Выпадающий список фильтров Сортировать список Таблица заклинаний

Столы

Полосатый стол под зебру Центральные столы Стол во всю ширину Параллельные столы Адаптивные таблицы Сравнительная таблица

Более

Полноэкранное видео Модальные коробки Удалить модальное Лента новостей Индикатор прокрутки Индикаторы прогресса Панель навыков Ползунки диапазона Подсказки Отображение элемента при наведении Всплывающие окна Складной Календарь HTML включает Список дел Погрузчики Звездный рейтинг Рейтинг пользователей Эффект наложения Контактные чипы Открытки Флип-карта Карточка профиля Карточка товара Оповещения Вызывать Примечания Этикетки Круги Стиль HR Купон Группа списка Список без маркеров Отзывчивый текст Вырезанный текст Светящийся текст Фиксированный нижний колонтитул Липкий элемент Равная высота Клирфикс Отзывчивые поплавки Закусочная Полноэкранное окно Прокрутка рисования Гладкая прокрутка Градиентная прокрутка Bg Липкий заголовок Уменьшить заголовок при прокрутке Таблица цен Параллакс Соотношение сторон Отзывчивые фреймы Переключить Нравится/Не нравится Переключить скрыть/показать Переключить темный режим Переключить текст Переключить класс Добавить класс Удалить класс Активный класс В виде дерева Удалить свойство Автономное обнаружение Найти скрытый элемент Перенаправить веб-страницу Увеличить при наведении Флип-бокс Центрировать по вертикали Центральная кнопка в DIV Переход при наведении Стрелки Формы Ссылка для скачивания Полноразмерный элемент Окно браузера Пользовательская полоса прокрутки Скрыть полосу прокрутки Показать/принудительно включить полосу прокрутки Внешний вид устройства Редактируемая граница Цвет заполнителя Цвет выделения текста Цвет пули Вертикальная линия Разделители Анимированные иконки Таймер обратного отсчета Печатная машинка Страница скоро появится Сообщения чата Всплывающее окно чата Разделенный экран Отзывы Счетчик секций Слайд-шоу цитат Закрываемые элементы списка Типичные точки останова устройства Перетаскиваемый элемент HTML Медиа-запросы JS Подсветка синтаксиса JS-анимации Длина строки JS JS Возведение в степень Параметры JS по умолчанию Получить текущий URL-адрес Получить текущий размер экрана Получить элементы iframe

Веб-сайт

Создать бесплатный веб-сайт Сделать сайт Сделать статический сайт Сделать сайт (W3.CSS) Сделать веб-сайт (BS3) Сделать веб-сайт (BS4) Сделать веб-сайт (BS5) Создание и просмотр веб-сайта Создайте сайт с деревом ссылок Создать портфолио Создать резюме Сделать сайт ресторана Сделать бизнес-сайт Сделать веб-книгу Веб-сайт центра Контактная информация О странице Большой заголовок Пример веб-сайта

Сетка

2 столбца 3 столбца 4 столбца Расширяющаяся сетка Представление списка в виде сетки Смешанная компоновка столбцов Карты столбцов Схема «зигзаг» Макет блога

Google

Google диаграммы Гугл шрифты Сочетания шрифтов Google Гугл настроить аналитику

Преобразователи

Преобразовать вес Преобразование температуры Преобразование длины Преобразование скорости

Блог

Получить работу разработчика Станьте фронтенд-разработчиком.

Как сделать - Форма с несколькими шагами


Узнайте, как создать форму с несколькими шагами.


Мастер форм - многошаговая форма:

Регистр:

Имя:

Контактная информация:

День рождения:

Информация для входа:


Шаг 1) Добавьте HTML:

Пример

<form id="regForm" action="">

<h1>Register:</h1>

<!-- One "tab" for each step in the form: -->
<div class="tab">Name:
  <p><input placeholder="First name..." oninput="this.className = ''"></p>
  <p><input placeholder="Last name..." oninput="this.className = ''"></p>
</div>

<div class="tab">Contact Info:
  <p><input placeholder="E-mail..." oninput="this.className = ''"></p>
  <p><input placeholder="Phone..." oninput="this.className = ''"></p>
</div>

<div class="tab">Birthday:
  <p><input placeholder="dd" oninput="this.className = ''"></p>
  <p><input placeholder="mm" oninput="this.className = ''"></p>
  <p><input placeholder="yyyy" oninput="this.className = ''"></p>
</div>

<div class="tab">Login Info:
  <p><input placeholder="Username..." oninput="this.className = ''"></p>
  <p><input placeholder="Password..." oninput="this.className = ''"></p>
</div>

<div style="overflow:auto;">
  <div style="float:right;">
    <button type="button" id="prevBtn" onclick="nextPrev(-1)">Previous</button>
    <button type="button" id="nextBtn" onclick="nextPrev(1)">Next</button>
  </div>
</div>

<!-- Circles which indicates the steps of the form: -->
<div style="text-align:center;margin-top:40px;">
  <span class="step"></span>
  <span class="step"></span>
  <span class="step"></span>
  <span class="step"></span>
</div>

</form>


Шаг 2) Добавьте CSS:

Стилизовать элементы формы:

Пример

/* Style the form */
#regForm {
  background-color: #ffffff;
  margin: 100px auto;
  padding: 40px;
  width: 70%;
  min-width: 300px;
}

/* Style the input fields */
input {
  padding: 10px;
  width: 100%;
  font-size: 17px;
  font-family: Raleway;
  border: 1px solid #aaaaaa;
}

/* Mark input boxes that gets an error on validation: */
input.invalid {
  background-color: #ffdddd;
}

/* Hide all steps by default: */
.tab {
  display: none;
}

/* Make circles that indicate the steps of the form: */
.step {
  height: 15px;
  width: 15px;
  margin: 0 2px;
  background-color: #bbbbbb;
  border: none;
  border-radius: 50%;
  display: inline-block;
  opacity: 0.5;
}

/* Mark the active step: */
.step.active {
  opacity: 1;
}

/* Mark the steps that are finished and valid: */
.step.finish {
  background-color: #04AA6D;
}

Шаг 3) Добавьте JavaScript:

Пример

var currentTab = 0; // Current tab is set to be the first tab (0)
showTab(currentTab); // Display the current tab

function showTab(n) {
  // This function will display the specified tab of the form ...
  var x = document.getElementsByClassName("tab");
  x[n].style.display = "block";
  // ... and fix the Previous/Next buttons:
  if (n == 0) {
    document.getElementById("prevBtn").style.display = "none";
  } else {
    document.getElementById("prevBtn").style.display = "inline";
  }
  if (n == (x.length - 1)) {
    document.getElementById("nextBtn").innerHTML = "Submit";
  } else {
    document.getElementById("nextBtn").innerHTML = "Next";
  }
  // ... and run a function that displays the correct step indicator:
  fixStepIndicator(n)
}

function nextPrev(n) {
  // This function will figure out which tab to display
  var x = document.getElementsByClassName("tab");
  // Exit the function if any field in the current tab is invalid:
  if (n == 1 && !validateForm()) return false;
  // Hide the current tab:
  x[currentTab].style.display = "none";
  // Increase or decrease the current tab by 1:
  currentTab = currentTab + n;
  // if you have reached the end of the form... :
  if (currentTab >= x.length) {
    //...the form gets submitted:
    document.getElementById("regForm").submit();
    return false;
  }
  // Otherwise, display the correct tab:
  showTab(currentTab);
}

function validateForm() {
  // This function deals with validation of the form fields
  var x, y, i, valid = true;
  x = document.getElementsByClassName("tab");
  y = x[currentTab].getElementsByTagName("input");
  // A loop that checks every input field in the current tab:
  for (i = 0; i < y.length; i++) {
    // If a field is empty...
    if (y[i].value == "") {
      // add an "invalid" class to the field:
      y[i].className += " invalid";
      // and set the current valid status to false:
      valid = false;
    }
  }
  // If the valid status is true, mark the step as finished and valid:
  if (valid) {
    document.getElementsByClassName("step")[currentTab].className += " finish";
  }
  return valid; // return the valid status
}

function fixStepIndicator(n) {
  // This function removes the "active" class of all steps...
  var i, x = document.getElementsByClassName("step");
  for (i = 0; i < x.length; i++) {
    x[i].className = x[i].className.replace(" active", "");
  }
  //... and adds the "active" class to the current step:
  x[n].className += " active";
}