簡體   English   中英

IE7錯誤-浮動:浮動的左子級:右父級

[英]IE7 Bug - float: left child of float: right parent

我有一個奇怪的問題(僅適用於ie7),其中右浮動元素的左浮動子元素未受其父元素的寬度限制,而是一直沿父元素的父元素的最左端停在最左邊浮動股 您可以參考以下小提琴以獲得示例代碼。 在所有其他瀏覽器上看起來都不錯,但是不幸的是我必須支持ie7。

有沒有一種方法可以解決此問題,而無需在兩個浮動子項的父項上設置顯式寬度,也無需更改標記結構?

http://jsfiddle.net/s89XZ/

小提琴的代碼如下:

    <style>
        .wrapper{
            position: relative;
            width: 500px;
            min-height: 18px;
            margin: 0 auto;
            padding: 14px 0;
            background-color: red;
        }
        .menu_L{
            color: #504A43;
            height: 18px;
            float: left;
            width: 100px;
            background-color: blue;
        }
        .menu_R_wrapper{
            float: right;
        }
        .menu_R{
            position: relative;
            float: right;
        }
        .menu_R .item_L,
        .menu_R .item_R{
            width: 50px;
            height: 18px;
        }
        .menu_R .item_L{
            float: left;
            background-color: orange;
        }
        .menu_R .item_R{
            float: right;
            background-color: green;
        }
    </style>
    <div class="wrapper">
        <div class="menu_L"></div>
        <div class="menu_R_wrapper">
            <div class="menu_R">
                <div class="item_L"></div>
                <div class="item_R"></div>
            </div>
        </div>
    </div>

您必須在那些較小的IE中設置浮動父元素的寬度:請參閱http://jsfiddle.net/s89XZ/1/ ,其中添加了此寬度(此處應為100px,但105px更好地表明它可以工作):

.menu_R {
    width: 105px;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM