положение: абсолютный уменьшает ширину в IE7 - PullRequest
1 голос
/ 22 марта 2012

Я пытаюсь расположить div внутри div.внешний div имеет фиксированную ширину и высоту, внутренний div содержит некоторый текст, имеет фиксированную высоту и автоматически соответствует ширине внешнего div (поведение по умолчанию, без «width: 100%»).

Теперь, когда я добавляю позицию: относительно внешнего элемента div и позицию: absolute + bottom: 0 к внутреннему элементу div, я просто хочу, чтобы внутренний элемент div переместился к основанию внешнего элемента div, но сохранил ту же ширину, что и раньше.Это прекрасно работает в большинстве браузеров (Internet Explorer 8+, Firefox, Opera), но в IE7 уменьшает ширину, чтобы уместить текст внутри внутреннего div.

Существует ли чистый и правильный способ предотвратить этоповедение в IE7?

Вы можете увидеть пример здесь: http://www.loud.fm/tmp (я говорю о черном ящике во внутренней нижней части блока признака-слайдера.) Заранее спасибо!:)

Ответы [ 3 ]

4 голосов
/ 22 марта 2012

Поскольку вы уже используете абсолютное позиционирование, чтобы зафиксировать его снизу, почему бы не добавить

left: 0;
right: 0;

к вашему CSS.

0 голосов
/ 24 апреля 2013

У меня была довольно похожая проблема с изменением ширины Div в IE7.Простой тег стиля решил это для меня:

min-width: 100%;

После нескольких часов проб и ошибок, это было все, что потребовалось.Надеюсь, это поможет!

0 голосов
/ 22 марта 2012

Когда вы выполняете position: absolute, вы нарушаете некоторые отношения.В примере, который вы упомянули, вы заметите, что div черного ящика принадлежит элементу li, в котором элемент li имеет статическую ширину (590 пикселей).Вы можете динамически установить ширину внутреннего div равной ширине внешнего, используя javascript при загрузке для обработки всех ситуаций.В противном случае установите статический размер ширины, соответствующий размеру родительского элемента.

...