0

2つのボックスを並べて表示しようとしています(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>
4

1 に答える 1

2

IE6を持っていないので、テストできませんが、とにかく。width: 100%から削除してみて.mainBox、すべての境界線も削除してください。代わりに、テストに背景色を使用してください。そのようにしてIE7標準で動作するようになりました。

.mainBoxはフロートを持たないDIVであるため、暗黙的に100%幅になります。また、境界線が幅に追加されるため、テスト中に予期しない動作が発生する可能性があります。

于 2011-01-25T11:31:06.443 に答える