CSS Datei einbinden?
Kermit
- css
Hallo,
habe mal ne blöde Frage:
Habe eine Website Formatierung über eine CSS-Datei die im Ordner CSS liegt.
Diese binde ich bei den einzelnen Seiten im Head wie folgt ein:
html Seite im Hauptordner:
<link rel="stylesheet" href="css/format.css" type="text/css">
funktioniert soweit auch ohne Probleme - selbst IE und Mozilla zeigen die Formate richtig an.
Nur sobald ich versuch die CSS Datei in einer Seite einzufügen, die in einem anderen Ordner liegt gibt es Probleme - Mozilla zeigt die Formate noch richtig an, IE ignoriert alle CSS angaben.
html Seite in höherem Ordner:
<link rel="stylesheet" href="../css/format.css" type="text/css">
Woran kann das liegen? Wie gesagt Mozilla kein Problem, IE schon? Muß man die Einbindung im IE dann anders schreiben - kann doch wohl nicht sein?
In der CSS Datei sind jetzt auch keine wirklich abstrusen Formate angegeben (eigentlich nur Schriftgrößen, Schriftart, Schriftsättigung und Ausrichtung).
Grüße,
Kermit
hi,
html Seite in höherem Ordner:
<link rel="stylesheet" href="../css/format.css" type="text/css">
ich glaub die Punkte sind da zuviel.
grüße
<link rel="stylesheet" href="../css/format.css" type="text/css">
ich glaub die Punkte sind da zuviel.
wenns nur eine ebene höher ist nein, wenns eine referenz zum wurzelelement ist ja
allerdings sollte das von allen browsern gleich interpretiert werden
hi,
<link rel="stylesheet" href="../css/format.css" type="text/css">
ich glaub die Punkte sind da zuviel.wenns nur eine ebene höher ist nein, wenns eine referenz zum wurzelelement ist ja
allerdings sollte das von allen browsern gleich interpretiert werden
Mangels informationen bin ich mal vom Root ausgegangen.
grüße
hi,
<link rel="stylesheet" href="../css/format.css" type="text/css">
ich glaub die Punkte sind da zuviel.
allerdings sollte das von allen browsern gleich interpretiert werden
Hi,
eben, sollte von allen Browsern gleich interpretiert werden - dachte ich...
Und das Problem besteht wenn ich eine Ebende über der Root bin. Dokumente im Root Verzeichnis über <link rel="stylesheet" href="css/format.css" type="text/css"> eingebunden funktioniert, Dokumente in höheren Ebenen (dann eben mit den Punkten) funktionieren nicht.
Habe auch schon versucht die Css Datei absolut einzubinden also
<link rel="stylesheet" href="http://www.domain.de/css/format.css" type="text/css"> ebenso ohne Erfolg...
Kermit
hi,
Habe auch schon versucht die Css Datei absolut einzubinden also
<link rel="stylesheet" href="http://www.domain.de/css/format.css" type="text/css"> ebenso ohne Erfolg...
Dann machst du irgendwas falsch! Normalerweise, wenn deine format.css im Verzeichnis /css/ ist und du versuchst aus einem anderen Verzeichnis drauf zuzugreifen, reicht eine absolute Pfadangabe vom Root aus gesehen.
<link rel="stylesheet" href="/css/format.css" type="text/css">
Hast du es online, wo man sich das mal ansehen kann?
grüße
hi,
Hast du es online, wo man sich das mal ansehen kann?
grüße
Leider nein....
Denke auch daß ich was falsch mache - allerdings was mich verwundert ist, daß Mozilla anscheinend die Datei findet und der IE nicht...
Muß der
<link rel="stylesheet" href="../css/format.css" type="text/css">
an einer bestimmten Stelle im Head stehen?
Kann es eventl daran liegen, daß der falsch plaziert ist?
Hier der Head der problematischen Datei
<head>
<META content="text/html; charset=utf-8" http-equiv="Content-Type">
<title>Seitentitel</title>
<script language="JavaScript">
<!--
<head>
<META content="text/html; charset=utf-8" http-equiv="Content-Type">
<title>Gästebuch</title>
<script language="JavaScript">
<!--
function getEmail(email) {
var stringPos = false;
var stringEmail = "";
if (email.length>0) {
for (var i=0; i<email.length; i++) {
stringPos = (i % 2) ? false : true;
if (stringPos == true) {
stringEmail = stringEmail + "%" + email.charAt(i);
} else {
stringEmail = stringEmail + email.charAt(i);
}
}
stringEmail = unescape(stringEmail);
window.location.href = stringEmail;
}
}
//-->
</script>
<link rel="stylesheet" href="../css/format.css" type="text/css">
</head>
Leider nein....
Denke auch daß ich was falsch mache - allerdings was mich verwundert ist, daß Mozilla anscheinend die Datei findet und der IE nicht...
Muß der
<link rel="stylesheet" href="../css/format.css" type="text/css">
an einer bestimmten Stelle im Head stehen?
Kann es eventl daran liegen, daß der falsch plaziert ist?
Hier der Head der problematischen Datei
<head>
<META content="text/html; charset=utf-8" http-equiv="Content-Type">
<title>Seitentitel</title>
<script language="JavaScript">
<!--
function getEmail(email) {
var stringPos = false;
var stringEmail = "";
if (email.length>0) {
for (var i=0; i<email.length; i++) {
stringPos = (i % 2) ? false : true;
if (stringPos == true) {
stringEmail = stringEmail + "%" + email.charAt(i);
} else {
stringEmail = stringEmail + email.charAt(i);
}
}
stringEmail = unescape(stringEmail);
window.location.href = stringEmail;
}
}
//-->
</script>
<link rel="stylesheet" href="../css/format.css" type="text/css">
</head>
Hier der Head der problematischen Datei
bereinige die wahrscheinlich zahlreich vorhandenen (x)html-fehler, ggf löst sich dann dein problem
<head>
<META content="text/html; charset=utf-8" http-equiv="Content-Type">
meta schreiben (für xhtml ganz "praktisch")
<script language="JavaScript">
<script type="text/javascript">
<!--
//-->
/* <![CDATA[ */
/* ]]> */
in xhtml dokumenten
nachdem du uns die verwendte DTD verschweigst, kann man natürlich alles annhemen ;)
hi,
Leider nein....
Aber du liest schon das was wir hier schreiben?
Denke auch daß ich was falsch mache - allerdings was mich verwundert ist, daß Mozilla anscheinend die Datei findet und der IE nicht...
Das könnte ein Cache Problem sein.
Muß der
<link rel="stylesheet" href="../css/format.css" type="text/css">
an einer bestimmten Stelle im Head stehen?
Der steht schon richtig, hast du auch ein Doctype vor dem öffnenden head?
Wie auch immer,
<link rel="stylesheet" href="/css/format.css" type="text/css">
^^
^^
^^
grüße
<link rel="stylesheet" href="/css/format.css" type="text/css">
^^
^^
^^
??
ich habe verzeichnisstruktur:
root/seiteok.html
root/ebene1/problemseite.html
root/css/format.css
wenn ich in seiteok.html die css datei einbinde dann so
<link rel="stylesheet" href="css/format.css" type="text/css">
wenn ich bei ebene1/problemseite.html die css datei einbinden will muß ich doch erst eine Ebene zurück gehen oder sehe ich das falsch?
also
<link rel="stylesheet" href="../css/format.css" type="text/css">
Ok, probiere ich heute abend mal ohne Punkte - wobei mir dann noch immer nicht klar ist, warum Mozilla findet IE nicht...
Grüße
hi,
<link rel="stylesheet" href="/css/format.css" type="text/css">
^^
^^
^^
??
ich habe verzeichnisstruktur:
root/seiteok.html
root/ebene1/problemseite.html
root/css/format.csswenn ich in seiteok.html die css datei einbinde dann so
<link rel="stylesheet" href="css/format.css" type="text/css">
Richtig, das funktioniert, besser ist aber immer absolut vom Root auszugehen, ohne Domain, ohne Punkte.
href="/css/format.css"
wenn ich bei ebene1/problemseite.html die css datei einbinden will muß ich doch erst eine Ebene zurück gehen oder sehe ich das falsch?
Richtig. Eh, Falsch. Ist das ne fangfrage?
also
<link rel="stylesheet" href="../css/format.css" type="text/css">
^^
Falsch.
Ok, probiere ich heute abend mal ohne Punkte - wobei mir dann noch immer nicht klar ist, warum Mozilla findet IE nicht...
Tu das, und ja, der Mozilla hat es eventuell im Cache oder findet es, weil im Gegensatz zum IE hat Mozilla ja 'Hirn'.
grüße
Ok, probiere ich heute abend mal ohne Punkte - wobei mir dann noch immer nicht klar ist, warum Mozilla findet IE nicht...
wie ich schon sagte: validiere deinen quelltext, oft führt das zu den seltsamsten fehlern ;)
hi,
Ok, probiere ich heute abend mal ohne Punkte - wobei mir dann noch immer nicht klar ist, warum Mozilla findet IE nicht...
wie ich schon sagte: validiere deinen quelltext, oft führt das zu den seltsamsten fehlern ;)
Interessant, höre zum ersten mal, das validieren zu den seltsamsten fehlern führt, werde das bei meinem nächsten besuch beim vali berücksichtigen. :)
grüße
Interessant, höre zum ersten mal, das validieren zu den seltsamsten fehlern führt, werde das bei meinem nächsten besuch beim vali berücksichtigen. :)
du hast ja keine ahnung, welche schrecklichen fehler der validator in deine seiten einbauen kann :D
nein im ernst: auch wenn ich mich grade sehr dämlich ausgedrückt habe, sollte klar sein, was ich meine ;)
nein im ernst: auch wenn ich mich grade sehr dämlich ausgedrückt habe, sollte klar sein, was ich meine ;)
yoo, hab' sogar ich kapiert...
du hast ja keine ahnung, welche schrecklichen fehler der validator in deine seiten einbauen kann :D
Nein,das tut er nicht.
Es ist vielmehr so, dass er mit den rätselhaftesten Errormessages versucht, den Autoren zu mehr Fehlern zu veranlassen, damit er im zweiten Anlauf wieder mehr zu validieren hat.
Das Perfide ist dabei, dass er sich nicht begnügt, den ersten Fehler zu markieren, nein er hängt noch Dutzende andere Fehler dran, die keine Fehler wären, wäre der erste Fehler ausgebügelt.
Wenn dann der Anwender sich auf etwas anderes als den allerersten Fehler stürzt, hat er schon verloren, und ist für den Rest seines Lebens seinem Validiktator untertan.
Recht so...
mfg Beat
Hallo Kermit,
eben, sollte von allen Browsern gleich interpretiert werden - dachte ich...
Und das Problem besteht wenn ich eine Ebende über der Root bin.
meinst du wirklich "über"? Denn diese Verzeichnisse könntest du ja mit HTTP nicht erreichen. Mit keinem Browser. Vermutlich meist du also "eine Ebene UNTER dem Document Root".
Dokumente im Root Verzeichnis über <link rel="stylesheet" href="css/format.css" type="text/css"> eingebunden funktioniert, Dokumente in höheren Ebenen (dann eben mit den Punkten) funktionieren nicht.
Gib mal ein konkretes Beispiel. Entweder du machst irgendwas falsch, oder ich habe das Problem immer noch nicht verstanden.
Habe auch schon versucht die Css Datei absolut einzubinden also
<link rel="stylesheet" href="http://www.domain.de/css/format.css" type="text/css"> ebenso ohne Erfolg...
Absolut ist durchaus eine gute Idee, wenn du das Stylesheet von unterschiedlichen Ebenen aus einbinden willst. Aber den Domainnamen würde ich trotzdem weglassen - das erspart Arbeit, wenn du mit der Webpräsenz mal auf einen anderen Server (genauer: eine andere Domain) umziehen willst.
Also referenziere dein Stylesheet doch am besten mit "/css/format.css". Dieser absolute Bezug sollte in jedem Fall passen. Deine Angabe *mit* dem Hostnamen eigentlich auch; mir ist schleierhaft, warum nicht. Deshalb: Konkretes Beispiel, bitte. Am besten als Link auf eine der Problemseiten.
So long,
Martin