1

私のウェブサイトでは、bodyタグの最小幅を640pxにします。事はIE6はmin-widthを認識しない、ので、私は私のIE6のスタイルシートでのCSSの表現でこの問題を解決しようとしています:CSS式がクラッシュするブラウザ

body { 
    width : expression(this.clientWidth < 639 ? "640px" : "auto"); 
} 

しかし、私はそれのサイズを変更すると、これは息子として、ブラウザをクラッシュされます。私はthis.clientWidthの代わりにdocument.body.clientWidthを試しましたが、それもクラッシュします。これを修正することは可能ですか?

+0

IE6はCSS式をサポートしていますか?私はこれを聞いたことがない。あなたが私たちに言っていないプラグインがありますか?これは実際には驚くべきIE6の機能ですか? – Ryan

+0

IE6はCSS式をサポートしています。私はそれらを避けるだろう。このS.O.答えはあなたを助けるかもしれません:John Doe:http://stackoverflow.com/questions/93274/min-width-in-msie-6 – kinakuta

+0

ありがとう、私はこれを行うには多くの方法を試しましたが、私はそれを試しました[この1つ](http://stackoverflow.com/questions/93274/min-width-in-msie-6#93530)。これはちょっとしたHTMLの侵入ですが、マルチブラウザーの修正です – federicot

答えて

2

bodyが、これは動作するはずです、padding:0を持っている場合:

body { 
    width : expression(this.clientWidth < 641 ? "640px" : "auto"); 
} 

はデモ:で

body { 
    width : expression(this.clientWidth < 641+parseInt(document.body.currentStyle.paddingLeft,10)+parseInt(document.body.currentStyle.paddingRight,10) ? "640px" : "auto"); 
} 

デモ:http://jsfiddle.net/kt2m8/embedded/result/


一部 paddingあなたはこのようなものを使用することができますがある場合および margin:10pxhttp://jsfiddle.net/vL689/embedded/result/

+0

試してもうまくいかなかった:/。私はie6、笑を使用してjsfiddleの例を見ることができませんでした。とにかくあなたの答えをありがとう – federicot

+0

@ジョンドー:私はIE6(6.00.2900.2180)でセキュリティ設定:中 - > http://i.stack.imgur.com/HUBKx.jpgで試しました。 – stewe

関連する問題