Fensterbreite/höhe auslesen
Franz
- css
Hi,
ich formatiere meine Seite mit css:
...
position:absolute;
top:80%-20px;
left:0px;
width:100%;
height:25%;
...
Nun möchte ich allerdings die höhe und breite selber gestalten:
z.B.: width: 90%-50px;
Wie kann ich dafür Fensterreite/höhe auslesen??
Danke für die Hilfe
gruß
@@Franz:
Wie kann ich dafür Fensterreite/höhe auslesen??
Live long and prosper,
Gunnar
danke, aber wirklich helfen tut mir das nicht... ich will meine Seite ja über CSS gestalten und dafür solle breite/höhe in einer css-klasse #box{...} stehen.
Mit Javascript kann ich das ja nicht kombinieren oder kann man javascript einfach in eine .css mit einbauen??
Danke
@@Franz:
danke, aber wirklich helfen tut mir das nicht... ich will meine Seite ja über CSS gestalten
Natürlich. Die Seite soll auch ohne JavaScript ansehnlich aussehen; mit JavaScript gibt’s den letzten Feinschliff.
kann man javascript einfach in eine .css mit einbauen??
Nein.
Du kann aber mit JavaScript (gestartet bei window.onload) Werte von CSS-Eigenschaften ändern.
Live long and prosper,
Gunnar
aso, danke das klingt genau nach dem was ich suche... leider bekomme ich es nicht vernünftig zum laufen!
Habe folgenden Code eingebunden:
<script type="text/javascript">
function changeDivPosition() {
hoehe = window.innerHeight ? window.innerHeight : 100px;
document.getElementById('box').style.top = hoehe - 20px;
}
window.onload=changeDivPosition();
</script>
Leider passiert garnix :(
Woran könnte das liegen?
Nochmals danke
@@Franz:
function changeDivPosition() {
hoehe = window.innerHeight ? window.innerHeight : 100px;
Globale Variablen sind unfein.
Was soll 100px sein? Ein String? Dann fehlen dessen Begrenzer.
hoehe willst du aber einen numerischen Wert zuweisen. window.innerHeight liefert einen solchen. 100 wäre auch ein solcher.
Und für „nimm das erste, wenn es nicht falsch ist, sonst das zweite“ gibt es einen Operator: '||':
var hoehe = window.innerHeight || 100;
document.getElementById('box').style.top = hoehe - 20px;
20px?? Siehe oben.
Von einem numerischen Wert kannst du keinen String abziehen. Du willst zwei numerische Werte subtrahieren. style.top erwartet einen String mit Maßeinheit (px). Also:
document.getElementById('box').style.top = (hoehe - 20) + "px";
window.onload=changeDivPosition();
Nein, window.unload wird die Funktion zugewiesen, nicht ein bei deren Aufruf von ihr zurückgegebener Wert. Ohne Klammern:
window.onload = changeDivPosition;
Leider passiert garnix :(
Woran könnte das liegen?
Die Fehlerkonsole hat dir dazu nichts gesagt?
Live long and prosper,
Gunnar
[latex]Mae govannen![/latex]
var hoehe = window.innerHeight || 100;
Aber die IE-Problematik von innerHeight beachten! („Beachten Sie“)
Cü,
Kai
und wenn du es über eine Div-Box machst mit
width:90%;
padding:50px;
bzw margin:50px; je nachdem was du brauchst
hey,
auch eine sehr gute idee... werds gleich mal auprobieren
Danke