絕對定位的元素在IE6下莫名丟失解決辦法

2022-03-27 04:33:10 字數 1280 閱讀 4346

前幾天做春運的頁面時遇到的乙個問題.

下面為形成此問題的**:

<

style

>

.wrap

.box

.test1

.test2

style

>

<

div

class

="wrap"

>

<

div

class

="box"

>123456789

div>

<

div

class

="test1"

>abc

div>

<

div

class

="test2"

>def

div>

div>

此時.class名為"box"的元素在ie6下完全不見了.

經過測試.發現這個問題的形成條件:

1.box為絕對定位的元素.

2.box的相鄰元素都為浮動元素.

3.相鄰浮動元素的寬之和》=其父級元素的寬.

解決辦法:

1.設定其相鄰浮動元素的margin;

.test1

2.在box外層加一層position:relative的包裹.

<

style

>

.wrap

.add-wrap

.box

.test1

.test2

style

>

<

div

class

="wrap"

>

<

div

class

="add-wrap"

>

<

div

class

="box"

>123456789

div>

div>

<

div

class

="test1"

>abc

div>

<

div

class

="test2"

>def

div>

div>

在網上看到別人還有很多其他的解決這個問題的辦法.

例如插入空白div等.

但個人覺得還是第二種方法最好.

css 絕對定位的元素在 ie6 下不顯示

問題描述 在 ie6 中如果乙個浮動元素與絕對定位元素相鄰的話,在某些情況下絕對定位元素將會消失。產生原因 只有當絕對定位元素的鄰近浮動元素的寬度大於父層寬度減 3 時 即如果父層寬度是 300px,浮動元素的寬度大於 297px 該絕對定位元素在 ie6 下面會隱藏。html doctype ht...

css 絕對定位的元素在ie6下不顯示

問題描述 在 ie6 中如果乙個浮動元素與絕對定位元素相鄰的話,在某些情況下絕對定位元素將會消失。產生原因 只有當絕對定位元素的鄰近浮動元素的寬度大於父層寬度減 3 時 即如果父層寬度是 300px,浮動元素的寬度大於 297px 該絕對定位元素在 ie6 下面會隱藏。html doctype ht...

css 絕對定位的元素在 ie6 下不顯示

問題描述 在 ie6 中如果乙個浮動元素與絕對定位元素相鄰的話,在某些情況下絕對定位元素將會消失。產生原因 只有當絕對定位元素的鄰近浮動元素的寬度大於父層寬度減 3 時 即如果父層寬度是 300px,浮動元素的寬度大於 297px 該絕對定位元素在 ie6 下面會隱藏。html doctype ht...