Герб Укріїни
Віримо в Україну та ЗСУ. Слава Україні!

Стайлізація для select CSS або як стилізувати випадаючий список

26.10.2016

Щоб ваша сторінка в Інтернеті стала помітною, виділялася на загальному фоні, її треба трохи прикрасити. Сучасні програмні засоби пропонують для цього безліч способів. CSS3 надає практично безмежні можливості для оригінального оформлення сучасних сайтів. CSS3 дозволяє швидко та досить просто зробити ваш сайт незвичайним і запам’ятовуваним. У цьому занятті я продемонструю, як за допомогою CSS можна змінити зовнішній вигляд select (випадаючий список). Його можна зробити нестандартним та ефектним.

Розглянемо один із способів стилізації випадаючих списків.

2. Спосіб стилізації select CSS

Зараз я продемонструю, що ми можемо отримати в результаті нескладних операцій:

Стиль для select CSS або як стилізувати select

Тут ви можете завантажити вихідний код Select, створений за допомогою CSS:

 Завантажити, дивитися демо

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

1 крок. Підключаємо необхідні файли

Насамперед необхідно завантажити архів з вихідними матеріалами та взяти з нього два файли style.css та select.js або select_demo2.js. Це залежить від того, який вигляд списку ви хочете створити. Завантажені файли включаємо між тегами <head></head>:

2 крок. HTML структура елемента Select

Все дуже просто і доступно на мові розмітки HTML. Випадаючий список з рядом пунктів.

3 крок. Додаємо стилі для Select CSS

Стилів для select CSS не так вже й багато. У цьому матеріалі наведені стилі для першого списку. Запам’ятайте, будь ласка. Є два шляхи до зображенням: один розкриває (стрілка «вгору»), а другий закриває список (стрілка «вниз»). Ці шляхи також знаходяться у вихідних матеріалах:

У демонстраційній версії всі стилі розташовані в папці css. Щоб відобразити шлях до папки, спочатку вказуються «..», щоб вийти на один рівень вгору, а потім увійти в папку images.

Якщо ми хочемо створити список з постійною висотою, немає потреби копіювати всі стилі, достатньо замість стилю dropdownvisible вставити:

Також потрібно змінити скрипти відповідно до вказівок, наведених вище. В результаті отримаємо:

2016-10-26_125826

У яких браузерах цей Select CSS (випадаючий список) працює нормально?

  • ✓Firefox 24.0, Firefox 25.0, Firefox 26.0
  • ✓Chrome 29.0, Chrome 30.0, Chrome 31.0
  • ✓Opera 12.14, Opera 12.15, Opera 12.16
  • ✓IE 7.0, IE 8.0, IE 9.0, IE 10.0, IE 11.0
  • ✓Safari 5.1, Safari 6.0, Safari 6.1, Safari 7.0
  • ✓Apple IOS – iPhone 4S, iPhone 5, iPad 2 (5.0), iPad 3 (6.0), iPad Mini
  • ✓Android – Sony Experia X10, HTC One X, Kindle Fire 2, Google Nexus

Як бачите, за допомогою CSS та Javascript дуже просто стилізувати випадаючий список Select за своїм бажанням. Успіх вам гарантовано.

Виталий

Идея хорошая. Но управлять этим списком при помощи клавиатуры не выйдет.

Відповіcти
Мария

Шел 2022 год
Архив не скачивается
Демки нет
Проверить код невозможно
Параша

Відповіcти
Digrand

Спасибо за сигнал.
Fixed

Відповіcти
Параша

Параша. Хоть бы проверили, что в архивах лежит

Відповіcти
Digrand

Параша у тебя в штанах. А в архивах лежит то что должно лежать. Если руки кривые, иди на стройку работать

Відповіcти
Александра

А если используется несколько select на одной странице, как быть?
Данный скрипт работает только с одним селектом, другие он не видит.

Відповіcти
Александра

Разобралась, спасибо!
селект – обязательное условие для одного селекта.

Відповіcти
Серж

Попробуйте jQuery Form Styler – достаточно универсальный вариант.

Відповіcти
Алексей

К сожалению, jQuery Form Styler не работает с IOS и сафари, поэтому приходится искать что-то универсальное.
Этот же скрипт, даже не видит селект. Т.е я не могу понять какой выбрал элемент списка пользователь, с помощью $(‘.turnintodropdown’).val()
Или
let ab = document.querySelector(‘.turnintodropdown’);
console.log(ab.value);

Відповіcти
Vlad

Подскажите плз, где прописывается синий фон под выпадающими option1 option2 ?

Відповіcти
Digrand

Здравствуйте. Где вы там синий фон увидели?
Весь фон белый, есть фон при наведении

Відповіcти
Антон

Уже выбранный пункт в списке никак не выделен, но в целом реализация нравится.

Відповіcти
Дмитрий

Ничего не понятно… в стилях мы описываем какие-то классы, которых нету в выпадающем списке…

Відповіcти
Digrand

Стили есть, они генерируются скриптами и они нужны

Відповіcти
Igor

А демо?

Відповіcти
Digrand

Вы невнимательны, архив с демо есть в статье. Доступен для скачивания

Відповіcти

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *