Странная ошибка в разметке плавающего в IE6 - PullRequest
0 голосов
/ 21 декабря 2010

Я подумал, что это, вероятно, будет одной из «стандартных» ошибок макета IE6, но после некоторых поисков я не вижу очевидного решения. Вот мой тестовый пример:

http://game -point.net / разное / ie6Test /

Я хочу, чтобы он выглядел так, как он выглядит в Firefox3, Safari, Opera и IE8. Красный прямоугольник перекрывает зеленый прямоугольник в правом верхнем углу.

В IE6, однако, происходят 2 странные вещи. Во-первых, в верхнем поле (где я не указываю ширину не всплывающих DIV), зеленый DIV не очищается, но его ширина действительно не соответствует плавающему DIV. Это не кажется правильным; плавающий DIV должен быть вне потока. Существует также любопытный разрыв в 3 пикселя между зеленым DIV и всплывающим DIV.

Во 2-м поле, где я указываю ширину не всплывающих DIV, не всплывающие DIV очищают плавающий DIV, даже если я не установил атрибут CSS clear Конечно, они вообще не должны очищаться.

IE7 очень похож, за исключением того, что у него нет такого любопытного промежутка в 3 пикселя слева от плавающего DIV.

1) Это как-то неправильно использует CSS, и что я делаю неправильно? 2) Если это ошибка IE6 / IE7, хорошо ли она известна и есть ли обходной путь?

Ответы [ 2 ]

0 голосов
/ 22 декабря 2010

ОК, на этой странице PositionIsEverything кажется, что проблема довольно искусно объяснена.Похоже, людям просто нужно использовать совместимый со стандартами браузер, такой как IE8, Firefox, Opera, Safari и т. Д., Если вы хотите использовать плавающие макеты и заставить их выглядеть правильно.

0 голосов
/ 22 декабря 2010

Разрыв в 3 пикселя является ошибкой. либо поместите поле -3px на этот элемент, либо отобразите встроенный или оба. pie.net имеет все ваши ответы

...