2012-05-02 103 views
1

在我的網站中,我希望body標記的最小寬度爲640px。事情是,IE6不承認min-width,所以我想在我的IE6的樣式表一個CSS表達式解決這個問題:CSS表達式崩潰瀏覽器

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

但正如我調整它的大小,這是崩潰的瀏覽器的兒子。我試過document.body.clientWidth而不是this.clientWidth,但它也崩潰。有沒有可能解決這個問題?

+0

IE6支持CSS表達式?我從來沒有聽說過這個。有沒有涉及你沒有告訴我們的插件...或者這實際上是一些驚人的IE6功能? – Ryan

+0

IE6確實支持CSS表達式。我會避免他們。這S.O.答案可能會幫助你,約翰Doe:http://stackoverflow.com/questions/93274/min-width-in-msie-6 – kinakuta

+0

謝謝你們,我已經嘗試了很多方法來做到這一點,但唯一一個實際工作時我試過它[這一個](http://stackoverflow.com/questions/93274/min-width-in-msie-6#93530)。這有點侵入HTML,但它是一個多瀏覽器修補程序 – federicot

回答

2

如果bodypadding:0,那麼這應該工作:

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

演示:http://jsfiddle.net/kt2m8/embedded/result/


萬一有一些 padding你可以使用這樣的事情:

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

演示用 and margin:10pxhttp://jsfiddle.net/vL689/embedded/result/

+0

試過了,它沒有工作:/。我甚至無法在jsfiddle中看到使用ie6的例子,哈哈。感謝您的回答 – federicot

+0

@JohnDoe:我在IE6(6.00.2900.2180)中使用安全設置:Medium - > http://i.stack.imgur.com/HUBKx.jpg嘗試了它,我希望這有助於。 – stewe