Элементы без размера, использующие положение: абсолютное, динамически вставляя блоки сверху - как правильно? - PullRequest
0 голосов
/ 09 мая 2011

У меня есть несколько DIV с изображениями, отформатированными с использованием position: absolute, поэтому они не мешают расположению других элементов (текста) в DIV.

Когда IFRAME размером 728x90 создается динамически над этими DIV в документе, Firefox, MSIE8, Opera 11. * и даже K-Meleon 1.5.4 перемещают DIV, а также содержащиеся в них изображения, на 90 пикселей. Только Safari (5.0.4) перемещает DIV, но не изображения, которые застряли в положении, которое они получили до вставки IFRAME.

Мой вопрос: какое из 2 увиденных поведений является правильным, если оно есть (может быть неопределенным) и почему? В то время как большинство браузеров имеют полезное поведение, Safari, кажется, делает это «правильно», устанавливая положение относительно родительского элемента с положением, отличным от «статического» во время его добавления.

(«исправить» - добавить position: relative к DIV, содержащим изображения, но я хотел бы знать, почему это нужно только Safari)

1 Ответ

0 голосов
/ 09 мая 2011

Вы должны добавить position:relative; к элементу контейнера, с которым хотите, чтобы элементы position:absolute; были относительно.Это нормальное и правильное поведение.

Если вы этого не сделаете, они будут относиться к <body>, что, похоже, не то, что вы хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...