cssだけでIE6でもmin-widthを
IE6でも、
ネガティヴマージン(-400px)をとったもの(wrapper2)を、
位置合わせ用マージン(400px)を持つ領域(wrapper1)で囲むことによって、
幅の最小値(400px)を実現させました。
たぶんこれは、例えばwrapper2が600pxになったとき、
600-400+400=600となるけど、
400pxより小さくなった場合、例えば300pxでは
300-400+400
=(300-400)+400
の()内がマイナスの値を取らず0と計算するからだと思うのですが、
ここでは、ドキュタイプ宣言をしっかりしたり、「position:relative」を使わねばなりませんでした。
そこで、別のやり方。
固定幅の領域をつっかえ棒のように用意して、それ以下に幅が縮まないようにする書き方です。
(参考)
http://mb.blog7.fc2.com/blog-entry-122.html
http://blog-imgs-27-origin.fc2.com/m/b/m/mb/min-width.html
<style type="text/css">
#wrapper1 {
zoom:1; /* IE6のhasLayoutをtrueに */
}
#wrapper2 {
width:100%;/* 幅が必要 */
min-width:400px; /* IE6以外用*/
}
#forIE6 {
width:400px;/* IE6用最小幅 */
}
</style>
<div id="wrapper1">
<div id="wrapper2">
<div id="forIE6"></div>
【↑「forIE6」がつっかえ棒的な役割を果たす】【↑「forIE6」がつっかえ棒的な役割を果たす】【↑「forIE6」がつっかえ棒的な役割を果たす】【↑「forIE6」がつっかえ棒的な役割を果たす】【↑「forIE6」がつっかえ棒的な役割を果たす】【↑「forIE6」がつっかえ棒的な役割を果たす】【↑「forIE6」がつっかえ棒的な役割を果たす】【↑「forIE6」がつっかえ棒的な役割を果たす】
</div>
</div>
んんんー、でもこれは直感的には分かりやすいけど、ソース的に美しくないし、後々のメインテナンスのことを考えると、以前書いたほうが良いかも。


