Кто-нибудь придумал стратегию стилизации элементов формы, которая работает кросс-браузер? Для меня textfields
и textareas
обычно не представляют проблемы, но checkboxes
, radio buttons
и selects
(выпадающие списки) создают хаос.CSS-перекрестное позиционирование элементов формы
Мне не нужны эти вещи, чтобы они выглядели одинаково в разных браузерах. Но я бы хотел, чтобы они могли выстроить их заранее. Я хотел бы иметь возможность поставить checkbox
ниже textfield
и выстроить его с левым краем textfield
. Если это работает в Safari
, то это не в Firefox
: там checkbox
заканчивается ниже центра textfield
. Иногда вертикальное размещение может отличаться на 48px
или больше.
У меня есть опера на моем Apple, iMac
, на моем ПК настольного компьютера с Windows XP Pro
, и на ноутбуке ПК с Windows 7
(в каждом случае, новейшая версия Opera
). Чтобы разместить checkboxes
, мне приходилось индивидуально ориентировать каждую из этих машин.
Select
поля (выпадающие списки) дают мне те же головные боли. Часто они в порядке в некоторых браузерах, но на других они заканчиваются сверху checkbox
или textfield
, или 60px
слева или справа.
Единственная вещь, которую я действительно не пробовал, - CSS
сброс, так как Эрик Мейер сказал, что он не использует его для форм. Кто-нибудь еще пробовал это с успехом? Есть ли какой-либо надежный способ создания формы с общими единообразными стилями? Я даже не возражаю против идентификации пользовательского агента и доставки конкретных CSS
. Но когда одни и те же браузеры визуализируют элементы по-разному на компьютерах различного размера экрана, проблема становится подавляющей.
Ясно, что есть ответ, потому что многие формы в Интернете, похоже, работают кросс-браузер. Может ли кто-нибудь дать мне руку?
Спасибо.
Марк
Режущих свой вопрос до точки поможет вам получить ответы. –
Хм, у меня обычно нет проблем с этим. Если вы опубликуете пример, возможно, мы можем предложить sommat. –
Это проблема для всех нас точно. Я предлагаю вам попробовать некоторые шаблоны сброса. И сделаем сброс - для этого. вы можете использовать codepen или что-то еще и открыть его на всех машинах сразу и настроить. Отображение элементов: встроенный блок; может быть полезной, потому что тогда вы можете вертикально-выровнять: center; их. Удачи! Ответственные формы - это их собственные проблемы. Посмотрите на -webkit-внешний вид: нет; - для устройств iOS. Кнопки отправки должны быть переопределены фоном: цвет; vs. background-color: - и т. д. ... много сложных вещей - я пытаюсь их нормализовать. Удачи! – nouveau