Der Martin: Durch if-Abfrage der Bildschirmauflösund das Styesheet änder

Beitrag lesen

Hallo,

function Stylesheet() {
if (screen.width == 1024)
        {
        document.write('<link rel="stylesheet" type="text/css" href="1024.css">');

diese Konstruktion, vor allem die Verpackung in eine Funktion, sieht für mich stark danach aus, als würde dieser Code erst *nach* dem Laden des Dokuments aufgerufen.
Wenn aber document.write() nicht während, sondern nach dem Laden des Dokuments aufgerufen wird, dann *überschreibt* es das komplette geladene Dokument.

Wenn ich denn Quelltext im Browser öffne kommt nur :
<link rel="stylesheet" type="text/css" href="1280.css">

Das ist die zwangsläufige Folge.

Dass die Bildschirmauflösung nichts mit der Größe (Breite) des Browserfensters zu tun hat, hast du ja nun schon erfahren. Außerdem berücksichtigst du nur ein paar wenige mögliche Bildschirmauflösungen (1024, 1280 und 1680 Pixel Breite). Was ist mit 800, 1152, 1600, 1440 Pixel? Wer solche Auflösungen fährt, hat Glück: Dadurch, dass du diese Werte nicht abfragst, kriegen diese Benutzer von dir gar kein spezielles Stylesheet, sondern kommen in den Genuss des eigentlichen Dokuments.
Und Besucher ohne Javascript zum Glück auch.

Danke im vorraus !

Wo immer das sein mag.

Schönen Abend noch,
 Martin

--
Wenn du beim Kochen etwas heißes Wasser übrig hast, friere es ein.
Heißes Wasser kann man immer gebrauchen.