![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
Ich habe auf http://www.effenberg.de/maps.htm die Breite der Karte mit window.innerWidth an die Breits des Viewports angepasst und das funktioniert prima mit FF2 und IE6. Sobald ich aber in irgendeiner Form auf window.innerHeight zugreife, z.B. script>document.write('<div id="map" style="width: '+window.innerWidth+'px; height: '+(window.innerHeight - 300)+'px;"></div>')</script |
|
kriege ich im FF einen waagerechten Scrollbalken und links einen schmalen Rand. Und der IE6 kommt damit überhaupt nicht klar: Die angezeigte Karte nimmt zwar die gewünschte Höhe ein, aber die eigentliche Kartenfläche geht scheinbar über die gesamte Viewporthöhe, denn "Powerd by google" und "Nutzungsbedingungen" stehen plötzlich ganz unten im Viewport. Wo liegt mein Fehler? |
#3
| ||||
| ||||
|
|
Harald Effenberg wrote: |
|
Da fe lt das type-Attribut; ausserdem musst Du `</' im script-Element maskieren, am besten mit `<\/'. |
|
Das kann nicht funktionieren: Attributwerte werden nicht erneut nach Elementen geparst. Du suchst stattdessen div id="map" style="height: 690px; margin: auto;"></div Denn Block-Elemente haben per default die volle Breite des Elternelements, in diesem Fall die des body-Elements und damit (ohne Ränder) des Viewports, als Breite. |
|
Im MSHTML-DOM gibt es zudem die Eigenschaften `window.innerWidth' und window.innerHeight nicht (das hätte Dir bereits window.alert() verraten), jedoch entsprechend `window.document.body.clientWidth' und `window.document.body.clientHeight'. |
#4
| |||
| |||
|
|
"Thomas 'PointedEars' Lahn" <PointedEars (AT) web (DOT) de> schrieb: Im MSHTML-DOM gibt es zudem die Eigenschaften `window.innerWidth' und window.innerHeight nicht (das hätte Dir bereits window.alert() verraten), jedoch entsprechend `window.document.body.clientWidth' und `window.document.body.clientHeight'. Aber window.document.body.clientHeight verhält sich nicht so, wie ich es erwartet hätte. Oder habe ich hier noch einen Fehler drin? script type="text/javascript" document.write('<div id="map" style="height: ' + window.document.body.clientHeight + 'px;"><\/div>'); /script Ich hatte damit gerechnet, daß die Karte nun die ganze Höhe des Browserfensters einnimmt und den Rest verdeckt? |
![]() |
| Thread Tools | |
| Display Modes | |
| |