Selectimus
На текущем проекте некоторое время назад стала задача по унификации селектов во всех браузерах. Нужно было изменить их так, чтобы при одинаковом отображении они внешне оставались близкими к стандартным но при этом имели возможность гибкой настройки средствами CSS. Поискав готовые библиотеки, на тот момент ничего подходящего не нашел и решил сделать свой. Взял за отправную точку дизайн близкий к стандартному, плюс замена скроллбара, со стандартного системного на свой, также одинаковый во всех браузерах. Реализован скрипт в виде jQuery плагина. Требуемая версия jQuery – 1.5+.
Механизм работы такой:
- Стандартный селект полностью скрывается
 - На его месте создается маркированный список, который заполняется элементами списка c атрибутом value, в котором хранится номер элемента option из селекта. Тем самым при клике на li, в соответствии с параметром в value, в скрытом селекте выбирается option.
 - В том случае, если содержимое псевдоселекта больше, чем заданная видима область, то к списку добавляется скроллбар (так же jQuery плагин ScrollBar.js).
 - Внешний вид скроллбара можно поменять в файле стилей selectimus.css, там же можно поменять изображение кнопок, для прокрутки вверх и вниз. (Опции для оформления скроллбара в разработке).
 
Возможности плагина:
- Максимальная приближенность к стандартному, но одинаковому во всех браузерах, селекту, по умолчанию.
 - Стилизация селектов с помощью css. Параметр style (Object) передается при инициализации.
 - Дополнительная настройка с помощью добавления ширины, высоты и установка количества строк развернутого списка селекта.
 - Навигация с помощью клавиатуры.
 
Инициализация плагина:
	$([elemenet]).selectimus([style] [, options])
При инициализации плагина, если не переданы дополнительные параметры стилей, применяются стили по-умолчанию:
- color: '#000',
 - background: '#FFF',
 - color_up: '#FFF',
 - background_up: '#7EA0FA',
 - display: 'inline-block',
 - 'border-width': '1px',
 - 'border-style': 'solid',
 - 'border-color': '#b6b6b6',
 - 'border-radius': '5px',
 - margin: '3px 0',
 - position: 'relative',
 - overflow: 'visible'
 
Исходники находятся здесь.
Демо-страница с описанием здесь.
Плагин scrollbarJS
Заменяет стандартную полосу прокрутки в элементах на странице, к которым применяется свойство overflow: hidden, на универсальную во всех браузерах. Сейчас работает только с вертикальным контентом. В разработке также возможность добавления опций по настройке внешнего вида полосы прокрутки.
Исходники находятся здесь.
Возможно кому-нибудь пригодится такая реализация.
UPD: Спасибо всем за комментарии. Буду доделывать недоработки)
