CSS und Netscape

Status
Nicht offen für weitere Antworten.
M

Mark

Ich habe gerade per CSS ne wunderschöne Schriftart "embedded" und konnte mich im IE sofort über das Ergebnis freuen.

Jetzt kommt das, was immer kommt:

Netscape sch.... natürlich aus CSS und schreibt hässliches Times New Roman! Und das so groß dass ich 1 Meter von Bildschirm zurückweichen muss, um die Schrift zu lesen!

also meine Frage:

Kann ich für IE und NC ein jeweils eigenes CSS festlegen und das möglichst global konfigurieren (so dass ich nicht jede einzelne Datei ändern muss).
Vielleicht kann man es ja auch direkt im CSS festlegen?

So siehts übrigens jetzt aus:

p { color: black; font-weight: bold; font-size: 8pt; font-family: Verdana, Tahoma, "MS Serif", "MS Sans Serif", Arial; text-decoration: none }
a:link { color: #800000; font-weight: bold; font-size: 8pt; font-family: Verdana, Tahoma, "MS Serif", "MS Sans Serif", Arial; text-decoration: none }
a:active { color: #800000; font-weight: bold; font-size: 8pt; font-family: Verdana, Tahoma, "MS Serif", "MS Sans Serif", Arial; text-decoration: none }
a:visited { color: #800000; font-weight: bold; font-size: 8pt; font-family: Verdana, Tahoma, "MS Serif", "MS Sans Serif", Arial; text-decoration: none }
a:hover { color: #800000; font-weight: bold; font-size: 8pt; font-family: Verdana, Tahoma, "MS Serif", "MS Sans Serif", Arial; text-decoration: underline }
hr { color: black }
input { color: black; font-size: 8pt; font-family: Verdana, Tahoma, "MS Serif", "MS Sans Serif"; text-decoration: none; background-image: url(../Bilder/Webseite/tile_hell.gif); border: solid 1px black }
textarea { color: black; font-size: 8pt; font-family: Verdana, Tahoma, "MS Serif", "MS Sans Serif"; text-decoration: none; background-image: url(../Bilder/Webseite/tile_hell.gif); border: solid 1px black }
body { background-image: url(../Bilder/Webseite/tile.gif) }
@font-face
{
font-family: Tork;
src: url(../Schriftarten/TORK1.eot);
}
h1 { font-size: 20pt; font-family: Tork }


Wäre nett, wenn Ihr mir weiterhelft...

Gruß
Mark
 
Weiß nich, normalerweise müsste Netscrap das so akzeptieren, bei mir tut's ja auch!!! Aber vielleicht nützt dir der Hinweis, dass die schriftart auch auf dem jeweiligen PC installiert sein muss, und wenn du eine recht seltene Schriftart angegeben hast, kann es ja kaum ein Besucher sehen...
 
Nee, dass ist ja der Witz dabei. Die Schriftart wird durch das CSS ein die Site eingebettet (siehe auch Dateiendung ".eot"). Dass heisst, der Besucher muss den Font nicht installiert haben, sieht aber trotzdem alles...
 
is ja kewl! Naja, man lernt halt nie aus...

hm, das is aber PlugIn-unabhängig, oder? Vielleicht lässt sich das auch nur mit dem IE so machen?!?!?
 
schreibe dir ein kleines Javascipt, wo du einmal bei netscape usern das netscape style schickst und ein einmal bei ie usern zu dem ie style.

netscape&css = hund&katze
 
Wenn ich mich recht erinnere benutzen IE und NN verschiedene Formate für embedded Fonts. Ich wollte das auch mal machen und hab das dann wieder verworfen, weils nicht funktioniert hat.
 
Embedded Fonts und Style Sheet ctrl

Also, für normalzwecke dürfte so ein script reichen um die style sheets zu unterscheiden, machen die meisten websiten so (muss in den head).

Code:
<script language="JavaScript">
<!--
if(document.layers) {
	document.write('<link rel="stylesheet" href="netscape.css" type="text/css">');
	}
else	{
	document.write('<link rel="stylesheet" href="normal.css" type="text/css">');
	}

-->
</script>

So bekommen alle browser ausser netscape dein normales sheet, nur netscape eine spezialversion.
(ist die übliche variante, weil opera&co ganz gut mit den ms-kompatiblen (und w3c conformen) definitionen auskommen. BEi FOnt embedding siehts anders aus:


Code:
<script language="JavaScript">
<!--
if(document.all) {
	document.write('<link rel="stylesheet" href="ie.css" type="text/css">');
	}
else	{
	document.write('<link rel="stylesheet" href="normal.css" type="text/css">');
	}

-->
</script>


So bekommt nur der explorer das sheet mit den embedded fonts. Netscape hat uebrigens eine andere art, Fonts zu embedden - eot fonds, allerdings is mir keine authorensoftware dazu bekannt, weshalb ich damit noch nichts embedded hab. Lässt sich aber meines wissens auch mit style sheets realisieren (die integration).
 
Browsercheck

Wie mi-6master bereits angemerkt hat, funktioniert diese Standardlösung für einen Browsercheck relativ gut, sollte jedoch ein wenig ausgebaut werden, da ich erst vor kurzem Probleme mit einem solchen Skript hatte und mir etwas neues überlegen musste...also mein Lösungsvorschlag für einen einwandfreien Browsercheck sieht wie folgt aus:

Code:
<script language="JavaScript">
<!--

var IE4 = (document.all && !document.getElementById) ? true : false;
var N6 = (document.getElementById && !document.all) ? true : false;
if (IE4) document.write("<link rel=\"stylesheet\" href=\"ie.css\" type=\"text/css\">");
if (N6) document.write("<link rel=\"stylesheet\" href=\"n6.css\" type=\"text/css\">");
else document.write("<link rel=\"stylesheet\" href=\"others.css\" type=\"text/css\">");

//-->
</script>

Dies funktioniert bei meinen Seiten einwandfrei, da Opera, Mozilla und alle Netscapeversionen 4.x den ziemlich gleichen W3C-Standard unterstützen. Für Netscape 6.x brauchst du allerdings ein neues Stylesheet, da er ähnlich wie der IE 5.x funktioniert aber von den Standardskripts wie jenem von mi-6master nicht erkannt wird.

mfg, SyCHo
 
Ja, das stimmt schon

Das ist schon ganz richtig, man könnte aber auch beide scripts kombinieren! es benutzen nämlich meines Wissens noch fast genauso viele Leute den communicator (4.x) wie den N6 und ich finde ihn sogar besser; richtig schade, dass die layers weg sind...
 
Beide Skripts kombinieren

Damit liegst du vollkommen richtig mi-6master...allerdings ist dabei zu beachten, dass der Communicator 4.x die ELSE-Funktion ebenfalls übernimmt, was bedeutet, dass wenn in der ELSE-Funktion kein Ausschluss des Communicators vorgenommen wird, das Stylesheet zweimal eingebunden wird und dabei kann es dazu führen, dass der Communicator keines von beiden mehr initialisiert und somit die Funktion zunichte macht...

mfg, SyCHo
 
Status
Nicht offen für weitere Antworten.
Zurück