Как исправить переполнение Internet Explorer 9 с элементами формы, отображаемыми в списке и макетом на основе «display: table» - PullRequest
0 голосов
/ 13 марта 2012

Я хочу создать форму HTML с семантической и легкой разметкой.Каждый (метка, вход) вложен в узел li, дочерний элемент ul, дочерний элемент form.Что касается CSS, любой ul внутри form должен быть представлен как таблица, элементы списка должны быть представлены как строки таблицы, а метки и входные данные - как ячейки таблицы.

Вот демоверсия

Я пробовал вышеуказанную демонстрацию в Chrome 17.0.963.79, Opera 11.61, Safari 5.0.2, Firefox 8.0 и даже IE 8.0.7601.17514и выглядит так, как я хочу.

Однако, похоже, что IE 9.0.8112.15421 неправильно вычисляет некоторые элементы: элементы занимают место, которое я хочу, инструменты dev не показывают нежелательных полей или отступов, хотя, очевидно, форма, содержащая li(никогда не сам li и не ul! - см. демонстрацию) получает ширину метки, добавляемой к нему дважды, в результате чего остается неучтенный пробел , что приводит к горизонтальной полосе прокруткибыть добавленным к этому предку.Почему это происходит?Как это можно исправить?

1 Ответ

1 голос
/ 13 марта 2012

Я добавил float:right к form li input и получил в IE9 результат, аналогичный Chrome.

...