Я пытаюсь заменить элемент <select>
на <div>
, который идеально соответствует ему, используя jQuery. К сожалению, все браузеры спорят о фактической ширине / высоте объекта, поэтому у меня это есть, поэтому вам нужно вручную ввести высоту. Тем не менее, я хочу, чтобы высота, которую вы вводите, включала высоту отступов, поэтому при установке высоты div - я использовал этот код
$(divObject).height(options.height - $(this)
.css("padding-top")
.replace("px", "") - $(this)
.css("padding-bottom")
.replace("px", ""))
Где $(this)
- элемент <select>
.
Это прекрасно работает во всех браузерах ... кроме Safari. Safari каким-то образом решил, что даже если я явно установлю padding-top и padding-bottom, скажем, на 5px - фактические значения будут 2px.
Будучи совместимым с кросс-браузерным подходом, я действительно доволен до конца. Любая помощь будет высоко ценится: (