expression funktioniert nicht im IE6
goldie
- css
Hallo,
gestern habe ich versucht meine Webseite von einem fixen Layout auf ein prozentuales Layout umzustellen. Geplant war eine in Pixel bemessene Maximalbreite. Da Max-Width im IE6 und Kleiner nicht funktioniert wollte ich auf:
*html #content
{ width: expression((body.offsetWidth >1000)?'1000px':'auto'); }
~~~zurückgreifen.
Das Poblem ist: In meinem IE6 funktioniert das nicht. Werder die gewüschte Maximalbreite noch die Backfall-Lösung einer fixen Breite bei deaktiviertem Javascript treten ein. Egal wie breit das Fenster ist der content ist immer 95% breit.
Und das schlimme ist Javascript ist aktiviert. Es sollte eigentlich funktionieren.
Gegen 23:00 hab ichs dann aufgegeben das Layout flexibel zu gestalten und hab das Backup eingespielt.
Was ich schon versucht habe:
Quirks-Mode durch `<?xml version="1.0" encoding="utf-8"?>`{:.language-html}
und
diesen leicht abgeänderten Ausdruck
~~~css
*html #content {
width: expression((document.body.offsetWidth >1000)?'1000px':'auto');
}
Woran könnte das liegen???
Ps.: Eine Dummy Datei gibts hier
und die Formatierung hier
Beste Grüße!
Ciao!
*html #content {
width: expression((document.body.offsetWidth >1000)?'1000px':'auto');
}
expression() ist reine Microsoft-Syntax. Soll das in anderen Browsern auch funktionieren?
Der div-Container mit der id "content" soll offenbar eine Maximalbreite zugewiesen bekommen. Die CSS-konforme Lösung hierfür lautet:
max-width: 1000px;
Das funktioniert in allen relevanten Browsern. Wenn du für den siechenden IE6 oder gar den IE5 auch unbedingt eine Lösung basteln musst, nimm lieber JavaScript.
Grüße
Nico
expression() ist reine Microsoft-Syntax. Soll das in anderen Browsern auch funktionieren?
Nein, für die restlichen Browser geht ja max-width
Der div-Container mit der id "content" soll offenbar eine Maximalbreite zugewiesen bekommen. Die CSS-konforme Lösung hierfür lautet:
max-width: 1000px;
Weiß ich ;)
Das funktioniert in allen relevanten Browsern. Wenn du für den siechenden IE6 oder gar den IE5 auch unbedingt eine Lösung basteln musst, nimm lieber JavaScript.
Und wie müsste ich das dann anpacken? Ps.: Das ist übrigens auch javaScript
Grüße
goldie
Hallo,
Ps.: Das ist übrigens auch javaScript
du kannst es auch JS, js, jScript oder JScript oder sont irgendwie nennen --> was ist da der unterschied !?
MfG. Christoph
du kannst es auch JS, js, jScript oder JScript oder sont irgendwie nennen --> was ist da der unterschied !?
Also JS ist ja wohl ne Microsoft Geschichte und unterscheidet sich von JavaScipt. Soviel dazu.
du kannst es auch JS, js, jScript oder JScript oder sont irgendwie nennen --> was ist da der unterschied !?
jscript != javascript
jscript war zwar eine untermenge von ecmascript und somit mit javascript, hat sich aber inzwischen auseinanderentwickelt während javascript um einiges erweitert wurde, hat auch jscript etwas dazubekommen
in der vergangenheit wurde immer wieder auf neue javascript-versionen zurückgegriffen - dennoch ist jscript NICHT javascript
Hallo,
jscript != javascript
dann eben ni ^^
MfG. Christoph
Und wie müsste ich das dann anpacken? Ps.: Das ist übrigens auch javaScript
1. Stell die Breite des Viewports fest mit
self.innerWidth bzw. document.documentElement.clientWidth bzw. document.body.clientWidth (je nach Browser verschieden, self.innerWidth ist, glaube ich, Standardsyntax).
2. if (self.innerWidth > 1000) document.getElementById("content").style.width = "1000px";
Gruß
Nico