DIV-Breite dynamisch bis zu einem Maximum definieren
annabolika
- html
0 Alex0 annabolika0 suit
0 Harlequin
Hallo zusammen
Ich möchte einen DIV-Container der Text und Bilder enthält horizontal und vertikal begrenzen. Vertikal soll er immer das Maximum der Bildschirmhöhe haben - das mach´ ich wohl mit...
<div style="height: 100%;">
Horizontal möchte ich gerne dass er sich zwar ebenfalls dynamisch der Bildschirmbreite des Betrachters angleicht (also eigentlich: <div style="width: 100%;">), aber darüber hinaus (z.B. bei Verwendung eines sehr großen Monitors mit z.B. über 1280x1024 Auflösung) nur eine maximale Breite von z.B. 1000Pixel einnimmt. Also auf gut deutsch... der Container soll sich zwar dynamisch an den Besucherbildschirm anpassen, aber nur bis zu einer bestimmten Breite. Wird diese überschritten, vergrößert sich der Container nicht sondern bleibt auf dem vorher eingestellten Maximal-Wert stehen.
Wie mach´ ich das? Vielen Dank schon mal im Voraus für eure Hilfe.
Ermittle dazu die Bildschrimbreite, wenn bildschirmbreite <= 1000px dann div-breite:1000px; sonst halt div-breite:100%;
Ermittle dazu die Bildschrimbreite, wenn bildschirmbreite <= 1000px dann div-breite:1000px; sonst halt div-breite:100%;´
Die Bildschirmbreite des Besuchers kenne ich ja nicht. Die ist ja häufig sehr unterschiedlich. Deshalb müsste irgendein Skript oder sowas das übernehmen, aber es sollte halt auch in allen gängigen Browsern funktionieren.
Die Bildschirmbreite des Besuchers kenne ich ja nicht. Die ist ja häufig sehr unterschiedlich.
die bildschirmbreite ist auch nicht relevant - mein bildschirm hat auch eine breite, wenn ich den bildschirm und 90% drehe, ist die breite plötzlich die höhe - du kannst das aber nicht wissen ;)
das einzige was für dich relevant ist, ist die breite des anzeigebreichs des browsers
Deshalb müsste irgendein Skript oder sowas das übernehmen, aber es sollte halt auch in allen gängigen Browsern funktionieren.
die ensprechende antwort hast du von harlequin bereits bekommen, sprich wie du das mit css löst
jetzt ist es eine defintionsfrage, ob du den internet explorer 6 als browser betrachtest oder als museumsstück ;) in jedem fall kommst du um javascript oder css-expressions (invalides, auf javascript basierendes css für den internet explorer) nicht herum, wenn du dieses verhalten haben willst - beachte aber, dass du eben mit javascript nicht die desktopgröße oder sonst einen schmarrn ausliest, sondern lediglich die breite des browseranzeigebereichs
alternativ, ignoriere den ie6 und setze ihm eine nicht flexible seite vor - wer den ie6 verwendet hat mit hoher wahrscheinlichkeit einen alten rechner mit kleinem monitor [1]
suit.rebell.at
user:suit
pass:rebell
bei dieser layout-spielerei hab ich einfach pauschal beschlossen, der ie6 bekommt eine fixe breite, die vernünftige browser machens dynamisch
[1] der autor ist sich bewusst, dass dies nur wunschdenken ist :D
Yerf!
Wie mach´ ich das? Vielen Dank schon mal im Voraus für eure Hilfe.
CSS kennt auch min- und max-Werte für Breiten und Höhen.
max-width (und evtl. auch min-height) dürfte das sein, was du suchst.
Allerdings spielt da der IE6 noch nicht mit... Für die min-Werte gibts einfache Workarounds (der IE6 betrachtet die normalen Werte als min-Werte), die max-Werte kann man AFAIK nur über JavaScript nachbauen.
Gruß,
Harlequin