Влияет ли overflow:hidden на границы контейнера в IE6?

1

Есть примерно следующая разметка — родительский контейнер и два дочерних элемента:

<div id="container">
    <div class="child">First child</div>
    <div class="child">Second child</div>
</div>

С такими стилями:

#container .child
{
    float: left;
}

Так как для дочерних элементов задано float: left, то они выходят за пределы родительского контейнера. То есть элемент #container не охватывает элементы .child. Поэтому пришлось контейнеру присвоить overflow: hidden:

#container
{
    overflow: hidden;
}

Это решение работает во всех браузерах. И даже во всех версиях IE выше шестой. Вопрос в том, как заставить такую разметку отображаться корректно именно в IE 6.

Лучший ответ:

1

Нужно для родительского контейнера задать height или width и тогда контейнер будет вести себя также как в других браузерах. Можно задать фиксированное (px) или относительное (em и тп) значение:

#container
{
    overflow: hidden;
    height: 100%;
}

Новые ответы


0

Да работает. Internet Explorer до версии 7.0 включительно не поддерживает значение inherit, других ограничений на overflow я не видел, да и тестовый образец адекватно себя повёл в IETester

Integral

Я не совсем правильно выразился. Мне нужно использовать overflow:hidden не по прямому назначению (скрытие полосы прокрутки), а для изменения границ контейнера. Я немного подкорректировал текст вопроса, чтобы было понятнее.


v1.7.123.556
© 2009—2010 CodeHelper FAQ | О сайте | Обратная связь | История изменений | Статьи
Creative Commons LicenseМатериалы сайта распространяются под лицензией Creative Commons Attribution-Share Alike 3.0 Unported.