Zwei verschiedene stylesheets aufrufen

hallo zusammen.
eins im voraus: ich habe ÜBERHAUPT keine ahnung von js !!!
ich benutze js nur um bei einer html basierten hp je nach bildschirmauflösung des users verschieden große bilder einfügen oder ein anderes framset zu erzeugen.
das sieht bei mir dann zb so aus:
function getstartimage()
{
if (screen.width ";
return „“;
}

warscheinlich primitiv - erfüllt aber seinen zweck (wie gesagt ich werde anfangen es zu lernen^^)
jetzt möchte ich je nach auflösung eine anderes stylesheet laden.
normalerweise (also mit nur EINEM css) hab ich das so gemacht:

Lichtenrader Nudelrunde
<link rel=‚stylesheet‘ type=‚text/css‘ href=‚style/style.css‘>
</head>

jetzt möchte ich das link rel=„stylesheet“ … ersetzen durch einen js befehl der je nach auflösung einen anderen text an diese stelle setzt (also zb style.css oder stylesmall.css)
ich hatte die idee ein script einzubauen, sowas wie

<script language=„JavaScript“ src=„javascript/java.js“ type=„text/javascript“>
document.write(getstyle());

und in der js steht dann

function getstyle()
{
if (screen.width „;
return '“;
}

soweit die idee. leider bekomme ich nur ein weißen bildschirm.

frage: was is falsch?
ist der ansatz total falsch?
es wäre toll wenn ihr einen vorschlag machen könntet der dieser idee ähnlich ist weil ich wirklich noch garkeine ahnung von js habe und es hasse formeln zu benutzen die ich nicht verstehe.
ich bin aber für alles offen solange es funktioniert.
danke im voraus
elactic

Viel zu umständlich

ist der ansatz total falsch?

Ja ist er. Viel zu umständlich. Denn ein Flexibles Layout ist von der Bildschirmauflösung völlig unabhängig. Und dafür braucht man kein JavaScript, sondern nur sinnvolles HTML oder XHTML und CSS.

es wäre toll wenn ihr einen vorschlag machen könntet der
dieser idee ähnlich ist weil ich wirklich noch garkeine ahnung
von js habe und es hasse formeln zu benutzen die ich nicht
verstehe.

Wenn es dir um eine flexibles Layout geht, beschäftige dich mit css statt mit JavaScript. Das ist wesentlich einfacher. JavaScript ist nämlich gar nicht zum layouten gedacht.

Falls Du mit dem Gedanken spielst Tabellen für Layoutzwecke zu nutzen, erlaube ich mir jetzt einfach mal, dich auf einen Artikel auf meiner Website zu verweisen: http://www.marcus-ringer.de/tabellenlayouts.shtml

Gruß Marcus

Falls Du mit dem Gedanken spielst Tabellen für Layoutzwecke zu
nutzen, erlaube ich mir jetzt einfach mal, dich auf einen
Artikel auf meiner Website zu verweisen:
http://www.marcus-ringer.de/tabellenlayouts.shtml

Darf ich das ergänzen durch den Klassiker:
http://seybold.jan-andresen.de/

ich benutze js nur um bei einer html basierten hp je nach
bildschirmauflösung des users verschieden große bilder
einfügen oder ein anderes framset zu erzeugen.

Die Bildschirmauflösung dafür zu benutzen, unterschiedlich aufgelöste Bilder darzustellen ist prinzipiell okay, aber denke bitte daran, dass die Bildschirmauflösung nichts damit zu tun hat, wieviel Platz Du für Deine Website im Browser Deiner Besucher zur Verfügung hast.

Je nach Windowmanager, den Du benutzt, hat Dein Browserfenster oben rechts meist mindestens drei Icons, und in der Regel ist es das mittlere, das Dir erlaubt, Deinen Browser nicht maximiert zu benutzen. Ziehst Du das Fenster kleiner, merkst Du, dass die Auflösung irrelevant für den verfügbaren Platz ist und das Verweisen auf verschiedene Framesets wird zum überflüssigen und völlig unsinnigen Vorhaben. Denn Du müsstest ja Framesets für nahezu unendliche Fenstergrößen zur Verfügung stellen. Dann musst Du noch berücksichtigen, dass Browserfenster verschiedene Statuszeilen, Toolsbars etc. haben, die die sichtbare Anzeigefläche weiterhin verkleinern.

Höre auf das, was mein Vorredner Dir gesagt hat bzgl. CSS.
JavaScript hat auch immer den Nachteil, dass es abgestellt sein kann, und dann versagen alle Deine „Tricks“, die Du hier anführst. Alle Arbeit für die Katz.

http://www.bestviewed.de/screen/

Gruß,
-Efchen

Darf ich das ergänzen durch den Klassiker:
http://seybold.jan-andresen.de/

Natürlich darfst Du das. Aber klick doch bitte mal auf die von mir verlinkte Seite und scroll dann ganz nach unten…

Natürlich darfst Du das. Aber klick doch bitte mal auf die von
mir verlinkte Seite und scroll dann ganz nach unten…

Soweit bin ich beim letzten Mal nicht gekommen :wink:

Da darf ich Dich auf einen Tippfehler hinweisen. Mein Name ist „Friedrich“ mit „h“ am Ende :wink:

Schönes langes Wochenende!
-Efchen

Da darf ich Dich auf einen Tippfehler hinweisen. Mein Name ist
„Friedrich“ mit „h“ am Ende :wink:

Ups, danke für den Hinweis :smile:

Gruß Marcus

aber ich verstehe nicht ganz wie ich ohne präzise angaben ein frameset oä erstellen kann…
also meine index seite verweist zb direkt auf eine js funktion die da lautet

function getframesetwidth()
{
if (screen.width ";
return „“;
}

wie soll ich das angeben??? prozentual? dann habe ich probleme die bilder anzupassen. es geht mir ja wirklich nur um die beiden auflösungen 1024x768 und 1280x1024
ich schreibe auf einem 19". das sieht einfach scheiße aus wenn ich die auflösung ändere…

also meine index seite verweist zb direkt auf eine js funktion
die da lautet

function getframesetwidth()
{
if (screen.width ";
return „“;
}

js ist j ava s cript. Und wie bereits erwähnt, solltest Du dir für Layoutzwecke CSS vornehmen. Vergiss JavaScript fürs Layout!

wie soll ich das angeben??? prozentual?

Genau das!

dann habe ich probleme die bilder anzupassen.

Glaub mir eines: die Auflösung der Bilder ist nun wirklich das geringste Problem. Bilder müssen nämlich nicht skalieren damit sie gut aussehen.

es geht mir ja wirklich nur um die beiden auflösungen 1024x768 und 1280x1024

Mit semantischem (X)HTML und CSS ist die Auflösung irrelevant, weil sich das Layout automatisch anpasst.

Ich werde mal so bald wie möglich versuchen, dir eine Beispielseite zu machen, damit Du siehst was ich meine. Vollkommen ohne JavaScript. Ich melde mich dann noch mal.

Vielleicht hilft dir in der Zwischenzeit meine Seite als vorläufiges Beispiel: http://marcus-ringer.de/index.shtml

Gruß Marcus

Hallo!

Wie versprochen hier ein ganz einfaches Beispiel dafür, wie ein flexibles Layout aussehen kann. Keine Spur von JavaScript und irgendwelche Auflösungen sind ebenso irrelevant.

http://marcus-ringer.de/test/

Gib doch bitte Laut, wenn ich es wieder löschen kann. Ansonsten mach ich das nach 2 Tagen selbsständig.

Gruß Marcus

tut mir leid aber kannst du vllt ganz kurz erklären was das jetzt eigentlich zeigen soll?
mir sagt XHTML nämlich garnichts.
ich kann framesets, tabellengrößen etc prozentual angeben. aber wie soll ich schriftgrößen, bildergrößen etc beeinflussen?
ist das damit möglich? wär toll. aber letztendlich ist mein einziges problem die schriftgröße. mein kleines js für bilder, framesets etc funktioniert. jetzt brauch ich nurnoch irgenteine funktion, die ein anderes css aufruft, oder eine idee von euch.
thx

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

flexible, skalierbare Seite
Hallo elactic,

tut mir leid aber kannst du vllt ganz kurz erklären was das
jetzt eigentlich zeigen soll?
mir sagt XHTML nämlich garnichts.
ich kann framesets, tabellengrößen etc prozentual angeben.
aber wie soll ich schriftgrößen, bildergrößen etc
beeinflussen?

… Schriftgrößen, indem du sie in der Einheit „em“ definierst, Bilder, indem du width- und height-Attribute weglässt und ihnen stattdessen über CSS 100% width bezogen auf ein umschließendes Elternelement gibst, das du seinerseits prozentual oder in der Einheit „em“ in der Breite bestimmst.

ist das damit möglich? wär toll. aber letztendlich ist mein
einziges problem die schriftgröße.

Ja, dass alles (auch ein Bild) selbst im IE6 und darunter dynamisch mit der Schriftgröße mitskalieren kann, demonstriert die Barmer Ersatzkasse sehr schön, die für ihren barrierefreien, auch ohne Javascript funktionierenden Webauftritt den BIENE-Award gewonnen hat.

http://www.barmer.de/barmer/web/Portale/Versicherten…

Gruß Gernot

ich hab ein bundel der wichtigen daten gepackt, das ich dir schicken könnte… sag bescheid wenn das ok wäre

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

tut mir leid aber kannst du vllt ganz kurz erklären was das
jetzt eigentlich zeigen soll?

Das was Du wissen wolltest: ein Layout das von jeglichen Bildschrimauflösungen etc. unabhängig ist. Ganz ohne JavaScript, nur mit CSS.

mir sagt XHTML nämlich garnichts.

Tia, da hilft nur lernen. Von nichts kommt nichts. Man kann nicht Maler sein ohne vorher gelernt zu haben. Ebenso wenig kannst Du Sinnvolles Webdesign können ohne dich mit der Materie intensiv auseinander gesetzt zu haben.

Ansonsten musst Du dich mit dem Murks zufrieden geben.

ich kann framesets, tabellengrößen etc prozentual angeben.
aber wie soll ich schriftgrößen, bildergrößen etc
beeinflussen?
ist das damit möglich? wär toll.

Selbstverständlich ist das möglich. Mit CSS ganz einfach.

aber letztendlich ist mein
einziges problem die schriftgröße. mein kleines js für bilder,
framesets etc funktioniert.

Im Klartext: „ich hab’ nicht verstanden worum es geht, ist mir auch zu kompliziert, also bleib ich lieber bei meiner eingefahrenen Sache.“

Du willst aber nicht allen ernstes Tabellen zum Layouten benutzen oder? Wenn doch, lies das hier bitte bis zum Ende: http://marcus-ringer.de/tabellenlayouts.shtml

jetzt brauch ich nurnoch
irgenteine funktion, die ein anderes css aufruft, oder eine
idee von euch.

Ein CSS durch JavaScript aufzurufen ist absoluter Bullshit. Sorry, aber so ist es nun mal.

Schau dir den Quelltext meiner Seite an. Das Stylesheet beginnt mit und endet mit

Wenn Du ein separates (externes) Stylesheet benutzen willst das für alle Seiten gilt, brauchst Du nur in den Kopfbereich folgende Zeile einfügen:

.

Einfacher gehts nun wirklich nicht.

Ab jetzt gilt jede Änderung die Du in diesem Stylesheet vornimmst, für alle Seiten!

Sei nicht stur, sondern fang an mit dem umdenken.

Gruß Marcus

ich hab ein bundel der wichtigen daten gepackt, das ich dir
schicken könnte… sag bescheid wenn das ok wäre

Kannst Du machen, aber weiß sehr wahrscheinlich schon wo dein Problem liegt. Und das liegt im Grundlegenden Verständnis worum es überhaupt geht.

Die Tatsache dass Du JavaScript benutzen willst um ein CSS aufzurufen, ist eigentlich schon ziemlich vielsagend…

Gruß Marcus