Css mit Javascript einbinden.
Iclone
- javascript
Hallo Leute, ich weiß das es dieses Thema schon zu oft gibt und das auch hier aber ich finde nichts gescheites was mir helfen könnte. Und zwar habe ich folgendes Problem:
Ich möchte über Javascript eine andere CSS Datei einbinden und das in Abhängigkeit des Browsers. Allerdings wenn ich meinen Code ausführe funktioniert er, aber nach ein paar Minuten wenn ich nen Reload mache ist die Seite wieder ganz weiß.
Hier ist mal mein Code:
<SCRIPT TYPE="text/javascript" LANGUAGE="javascript">
function kennung()
{
if (navigator.userAgent.indexOf("Opera") != -1)
{
document.write('<link rel="stylesheet" type="text/css" href="layoutop.css">');
}
else if (navigator.userAgent.indexOf("Netscape") != -1)
{
document.write('<link rel="stylesheet" type="text/css" href="layoutns.css">');
}
else if (navigator.appName.indexOf("Internet Explorer") != -1)
{
document.write('<link rel="stylesheet" type="text/css" href="layoutie.css">');
}
else if (navigator.userAgent.indexOf("Firefox") != -1)
{
document.write('<link rel="stylesheet" type="text/css" href="layout.css">');
}
else
{
document.write('<link rel="stylesheet" type="text/css" href="all.css">');
}
}
kennung();
</SCRIPT>
Ich weiß es ist die selbe css aber hab das aus testzwecken gemacht. Mit den anderen Css Dateien funktionierte es genauso, erst klappte das und dann auf einmal nicht mehr.
Gruß Iclone
Hi,
Hallo Leute, ich weiß das es dieses Thema schon zu oft gibt und das auch hier aber ich finde nichts gescheites was mir helfen könnte. Und zwar habe ich folgendes Problem:
Ich möchte über Javascript eine andere CSS Datei einbinden und das in Abhängigkeit des Browsers.
Das ist vermutlich nicht dein Problem, sondern lediglich dein Versuch, die Symptome zu bekämpfen.
Dass JavaScript-Browserweichen seltenst sinnvoll sind, wenn es um Darstellungsprobleme geht - diese Info müsstest du doch gefunden haben, wenn du dich bereits informiert hast?
Was hältst du davon, wenn wir dein *eigentliches* Problem diskutieren, und dafür eine Lösung suchen?
*Warum* glaubst du, für verschiedene Browser unterschiedliche CSS-Ressourcen einbinden zu müssen?
MfG ChrisB
Das ist vermutlich nicht dein Problem, sondern lediglich dein Versuch, die Symptome zu bekämpfen.
Dass JavaScript-Browserweichen seltenst sinnvoll sind, wenn es um Darstellungsprobleme geht - diese Info müsstest du doch gefunden haben, wenn du dich bereits informiert hast?
Was hältst du davon, wenn wir dein *eigentliches* Problem diskutieren, und dafür eine Lösung suchen?
*Warum* glaubst du, für verschiedene Browser unterschiedliche CSS-Ressourcen einbinden zu müssen?MfG ChrisB
Das kann ich dir sagen warum ich das möchte. Weil nicht jeder Mensch den selben Browser benutzt und jeder Browser die Seite anders anzeigt. Heutzutage wird alles Firefox gerecht gemacht dabei denkt kaum einer mehr an Netscape, dem windoof ie und vll auch opera...die zeigen die seite völlig anders an.
Gruß Iclone
Hi,
bitte zitiere sinnvoll - das worauf du dich konkret beziehst, und nicht einfach alles.
Das kann ich dir sagen warum ich das möchte. Weil nicht jeder Mensch den selben Browser benutzt und jeder Browser die Seite anders anzeigt.
Also ist das letztere doch dein eigentliches Problem.
Heutzutage wird alles Firefox gerecht gemacht dabei denkt kaum einer mehr an Netscape, dem windoof ie und vll auch opera...die zeigen die seite völlig anders an.
Deine vielleicht.
Deshalb ist (und bleibt) das auch das Problem, an dem du arbeiten solltest.
MfG ChrisB
dabei denkt kaum einer mehr an Netscape, dem windoof ie und vll auch opera...die zeigen die seite völlig anders an.
Völlig? Ich hab ehrlich gesagt nur das Problem mit dem IE, dass der macht was er will.
Und an den denken so gut wie alle, sonst könnte sich MS diese ganze Extrawurst-Sch... nicht leisten.
@@Iclone:
nuqneH
Heutzutage wird alles Firefox gerecht gemacht
Nein. Heutzutage wird alles Browsern gerecht gemacht, die sich an Standards halten.
dabei denkt kaum einer mehr an Netscape
Warum auch? Netscape ist seit Jahren tot. Damit ist niemand mehr unterwegs Es sei denn, aus Nostalgiegründen, und in dem Falle sich völlig bewusst, Seiten nicht vernünftig dargestellt zu bekommen.
dem windoof ie und vll auch opera...die zeigen die seite völlig anders an.
Dass Opera eine Seite völlig anders anzeigt als Firefox, mag ich nicht glauben.
IEs sind Problemkinder, der 7er schon weniger als der 6er. Aber je nach Zielgruppe ist der 6er wenig bis gar nicht mehr relevant.
Wie Kai345 schon sagte, ein paar zusätzliche Zeilen für IEs in das eine Styelsheet für alle Browser und gut ist
Qapla'
[latex]Mae govannen![/latex]
Und zwar habe ich folgendes Problem:
.. nämlich, daß du meinst, per Javascript und Browser-Sniffing unterschiedliche Stylesheets einbinden zu wollen. Das ist schon im Ansatz eine sinnlose Idee, aus mehreren Gründen, daher: Laß es bleiben.
Ohne Javascript funktioniert es grundsätzlich nicht.
Jedem Browser einen eigene Stylesheet-Datei geben zu wollen ist Unsinn, denn jede Änderung muß in allen Dateien gemacht werden
Jedem Browser einen eigene Stylesheet-Datei geben zu wollen ist Unsinn, denn die überwiegende Mehrzahl der CSS-Regeln ist i.d.R. ohnehin für alle Browser gleich.
Benutze ein Stylesheet für alle Browser und passe dies für bestimmte Browser mit zusätzlichen Regeln an ggf. an. Für IE6/7 z.B. mit Selektoren wie * html
bzw. *+html
Hier ist mal mein Code:
<SCRIPT TYPE="text/javascript" LANGUAGE="javascript">
language ist ein Relikt aus dem letzten Jahrtausend.
if (navigator.userAgent.indexOf("Opera") != -1)
Browsererkennung aufgrund von navigator.userAgent ist immer Unsinn
Cü,
Kai