IE6のCSS変動高さの問題
-
13-09-2019 - |
質問
IE6の左サイドバー(バリティングハイトディング)のポジショニングに問題があります。
主なニーズ:1。高さの値を設定することはできません。原因の高さは変化し、ブラウザーによって計算される必要があります。 2.サイドバーには、上部と下の間隔が必要です。
トップバーの問題は、位置を相対に置き換えることで解決されます。
何か案は ?前もって感謝します !
以下に、標準のブラウザでどのように見えるかを簡素化したコードとスナップショットを見ることができます。
.container {
left: 550px;
top: 10px;
width: 196px;
position: absolute;
line-height: 0px;
font-size: 1px;
}
.inner {
width: 100%;
height: 114px;
background-color: rgb(227, 227, 227);
}
.leftbar {
left: 0px;
top: 7px;
bottom: 7px;
width: 4px;
position: absolute;
background-color: rgb(111, 111, 111);
}
.topbar {
left: 7px;
top: 0px;
right: 7px;
height: 4px;
position: absolute;
background-color: rgb(111, 111, 111);
}
<div class="container">
<div class="inner"></div>
<div class="leftbar"></div>
<div class="topbar"></div>
</div>
解決
IE6は、絶対的なポジショニングに関しては非常に悪いです。左と右、または上下から何かを同時に配置するだけでは機能しません。
基本的に4つのオプションがあります。
- IE6のサポートをドロップします。
- 絶対的なポジショニングをあきらめ、他の方法(たとえばフロート)を使用します。
- IE6用のサイトの馬鹿げたバージョンを提供します。たとえば、条件付きコメントを使用していくつかのスタイルをオーバーライドします。
- JavaScriptを使用して、IE6をポジショニングに支援します(たとえば AbsoluteFudge.js).
所属していません StackOverflow