timex: css-dateien in abhaengigkeit von browserfenster-breite einbinden

hallo zusammen,

ich moechte gerne zwei unterschiedliche stylesheets in abhaengigkeit von der breite des browserfensters einbinden.

hierzu das folgende coding ...

<script type="text/javascript">
<!--
if (document.body && document.body.clientWidth) {
 viewport = document.body.clientWidth;
 if (viewport >= 990) {
  document.write('<link rel="stylesheet" href="css/test1024.css" type="text/css">');
 } else {
  document.write('<link rel="stylesheet" href="css/test800.css" type="text/css">');
 }
}
// -->
</script>

die css-formatierung wird einfach nicht ausgegeben. woran kann das liegen?!

fragt freundlich, timex.

  1. Hi,

    die css-formatierung wird einfach nicht ausgegeben. woran kann das liegen?!

    daran, dass Du dies im <head> machst (machen musst), und somit der <body> noch nicht existiert, geschweige denn eine Breite hat.

    Cheatah

    --
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. daran, dass Du dies im <head> machst (machen musst), und somit der <body> noch nicht existiert, geschweige denn eine Breite hat.

      hallo Cheata,

      der ansatz leuchtet ein. aber ohne document.body.clientWidth komme ich ja nicht auf den gesuchten wert. und den verweis auf die css-dateien muessen im head stehen.

      vielleicht funzt es, wenn ich die abfrage als function im onload des body einsetze. ich glaube, das hatte ich auch schon einmal versucht. allerdings schreibt der client dann einfach <link rel="stylesheet ... in den quelltext. ist ja auch richtig.

      deswegen die weiterfuehrende frage: gibt es eine moeglichkeit, die variable "viewport" im head auszulesen, wenn ich diese zuvor in einer ausgelagerten datei setze?! bringt das was?! verwirrt?! ich versuche mal ...

      gruesse und dank fuer evtl. weitere ideen.
      timex

      1. Hi,

        vielleicht funzt es, wenn ich die abfrage als function im onload des body einsetze.

        dann wird das aktuelle - fertig gerenderte - Dokument vollständig überschrieben.

        deswegen die weiterfuehrende frage: gibt es eine moeglichkeit, die variable "viewport" im head auszulesen, wenn ich diese zuvor in einer ausgelagerten datei setze?!

        Diese könnte höchstens noch weiter oben im <head> aktiv werden.

        bringt das was?!

        A propos: Ob welchen Grundes brätst Du irgendwelche Extrawürste, und das ausgerechnet abhängig von der Größe des Browserfensters?

        Cheatah

        --
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes