CSS простая проблема с плавающей точкой в ​​режиме совместимости IE

Я пытаюсь получить два бокса рядом (левое меню размером 200 пикселей, а рядом с ним - область основного содержимого с оставшейся шириной 100%).

Он отлично работает во всех браузерах, но многие наши клиенты используют IE6 (к сожалению, мы ничего не можем с этим поделать), поэтому он должен поддерживать режим совместимости IE. К сожалению, этот простой CSS не работает! Может ли кто-нибудь помочь мне без необходимости возвращаться к столам?

Соответствующий CSS:

.clear {
    clear:both;
}

/* Left menu */
.leftMenu{
    width: 200px;
    border:1px solid green;
    height:100px;
    float:left;
}

/* Main Content area */
.mainBox{
    width:100%;
    border:1px solid red;
}
.mainWrapper{
}




<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">



<html xmlns="http://www.w3.org/1999/xhtml">

<head><title>



</title><link rel="stylesheet" type="text/css" href="css/default.css" /></head>



<body>

    <form name="form1" method="post" action="default.aspx" id="form1">

<div>

<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKLTIwNjAyODU4M2Rk5phxJ78Kc9Kf0nXvcJ7j7tQJPxw=" />

</div>

    <div class="mainWrapper">

        <div class="leftMenu">

        left

        </div>

        <div class="mainBox">

        main

        </div>

        <div class="clear"></div>

    </div>



    </form>

</body>

</html>

1 ответ

Решение

У меня нет IE6, поэтому не могу проверить, но все равно. Попробуйте удалить width: 100% от .mainBox а также удалите все границы и вместо этого используйте цвет фона для тестирования. Я получил его работать в стандартах IE7 таким образом.

.mainBox это DIV, который не имеет поплавков, поэтому он неявно имеет ширину 100%. Кроме того, границы увеличивают ширину, что может привести к неожиданному поведению во время тестирования.

Другие вопросы по тегам