Relative Pfadangabe (Referenzierung)

Hallo zusammen,

bei folgender Konstellation gelingt mir die relative Pfadangabe nicht (ich beginne den Aufbau einer Website):

Auf dem Server liegen folgende Dateien/Ordner:

  • Startseite index.html

  • Ordner „css“ mit css-Styles

  • Ordner „Seiten“ für die weiteren Seiten, z.B. seite1.html

Für index.html werden zwei css-Layouts im Headbereich über

aufgerufen. Passt soweit.

index.html führt zu Ordner „Seiten“ zu seite1.html. Dort soll für diese und andere Seiten erneut die Referenz auf die css-Layouts erfolgen. Passt nicht.

Hilfsweise habe ich den Ordner „css“ auch in den Ordner „Seiten“ kopiert, passt aber auch nicht.

Self-Html studiert, irgendwie finde ich den Fehler nicht. Weiß jemand Rat?

Gruß
nasziv

Hallo,
Versuchs mal so:

Cheers, Felix

Hallo,

Versuchs mal so:

Danke Felix, so geht es. Jetzt ist zwar das Bild in Seite 1 weg, aber wenn ich es nicht selbst richten kann, frage ich hier wieder nach. Super!

nasziv

Moin,

index.html führt zu Ordner „Seiten“ zu seite1.html. Dort soll
für diese und andere Seiten erneut die Referenz auf die
css-Layouts erfolgen. Passt nicht.

Weil hier die relative Pfadangabe eine andere ist. Du befindest Dich dann ja in einem anderen Verzeichnis (Seiten). Die Eigenschaft von relativen Pfaden ist ja, dass sie relativ zum augenblicklichen Verzeichnis angegeben werden.

Eine einfache Lösung ist hier, wie Dir schon geschrieben wurde, eine absolute Pfadangabe.
Die relative würde lauten „…/css/styles.css“.

Hilfsweise habe ich den Ordner „css“ auch in den Ordner
„Seiten“ kopiert, passt aber auch nicht.

Doch, dann kannst Du das mit „css/styles.css“ ansprechen. Das passt dann natürlich für index.html nicht mehr, da würde es dann „Seiten/css/styles.css“ lauten. Doppelt wirst Du die Stylesheets ja nicht halten wollen.

Self-Html studiert, irgendwie finde ich den Fehler nicht. Weiß
jemand Rat?

Einfach mal über absolute und relative Pfadangaben und über Ordnerstruktur informieren. Ist eigentlich gar nicht so schwer, wenn man sich diese als Baum vorstellt. Gibts glaub ich auch Artikel bei Wikipedia drüber, bin grad zu faul zum Suchen :wink:

Liebe Grüße,
-Efchen

Hallo,

informiert habe ich mich schon ein wenig, ist aber nicht so mein Gebiet. Ich verwende ein freies Layout und baue es ein wenig um auf meine Bedürfnisse. Durch die Änderung des Pfads funktioniert das Layout jetzt zwar online, offline dafür jedoch wieder nicht (???).

Und mit dem Bild (s. meine Antwort unten) habe ich das Problem, dass es beim Aufruf der Seite 1 nicht erscheint (nur ein Platzhalter). Wenn ich dann Seite 2 aufrufe und von dort wieder zu Seite 1 zurück, dann ist das Bild plötzlich da.

Ich muss da noch ein wenig probieren, auch wenn ich dafür eigentlich nicht die Zeit habe.

Danke für deine Hinweise zu relativ/absolut nochmal, werde ein wenig testen.

Gruß
nasziv

Moin,

ist aber nicht so mein Gebiet.

Im Moment ist es aber anscheinend absolut Dein Gebiet :wink:

Ich verwende ein freies Layout und baue es ein
wenig um auf meine Bedürfnisse.

Auch dafür braucht man ja Kenntnisse, die in Punkto Komplexität weit über relative Pfadangaben hinaus gehen.

Durch die Änderung des Pfads
funktioniert das Layout jetzt zwar online, offline dafür
jedoch wieder nicht (???).

Offline? Mit Server oder ohne Server? Die absoluten Pfadangaben online beziehen sich auf das Document Root des Webservers. Wenn Du keinen hast, dann beziehen die sich vermutlich auf das Filesystem Deines Computers.
Relative Pfadangaben sollten beiderseits richtig funktionieren, wenn Du die selbe Verzeichnisstruktur hast.

Und mit dem Bild (s. meine Antwort unten) habe ich das
Problem, dass es beim Aufruf der Seite 1 nicht erscheint (nur
ein Platzhalter).

Klicke rechts auf den Platzhalter und dann auf „Grafik anzeigen“.
Dann siehst Du in der Adresszeile die genaue URL des Bildes, die Du überprüfen kannst und Du siehst auch die genaue Fehlermeldung vom Server. Vermutlich 404 File not found und Du hast nicht auf Groß-/Kleinschreibung geachtet. Windoof ist nämlich das einzige Betriebssystem, das den Unterschied zwischen Klein- und Großbuchstaben nicht kennt und damit immer wieder Menschen an der Nase herumführt. Ist ja quasi schon eine Behinderung, was Windoof da hat…

Wenn ich dann Seite 2 aufrufe und von dort
wieder zu Seite 1 zurück, dann ist das Bild plötzlich da.

Das allerdings hört sich komisch an. Stell doch mal nen Link zur Seite hier rein.

Ich muss da noch ein wenig probieren, auch wenn ich dafür
eigentlich nicht die Zeit habe.

Besser wäre es, systematisch nach dem Fehler zu suchen :wink:

Danke für deine Hinweise zu relativ/absolut nochmal, werde ein
wenig testen.

Viel Erfolg weiterhin.

Grüße,
-Efchen

Hallo schon wieder,

Auch dafür braucht man ja Kenntnisse, die in Punkto Komplexität weit über relative Pfadangaben hinaus gehen.

Ist lange her, bin außer Übung mittlerweile.

Durch die Änderung des Pfads funktioniert das Layout jetzt zwar online, offline dafür jedoch wieder nicht (???).

Offline? Wenn Du keinen (Server) hast, dann beziehen die sich vermutlich auf das Filesystem Deines Computers.

Ja.

Klicke rechts auf den Platzhalter und dann auf „Grafik anzeigen“.

Versuche ich mal.

und Du hast nicht auf Groß-/Kleinschreibung geachtet.

Das dürfte nicht das Problem sein, so weit ich es sehe. Weil

Wenn ich dann Seite 2 aufrufe und von dort wieder zu Seite 1 zurück, dann ist das Bild plötzlich da.

Das allerdings hört sich komisch an. Stell doch mal nen Link zur Seite hier rein.

Ich schicke ihn dir per Mail, weil die ersten Inhalte gerade erst begonnen und konzeptmäßig sind, ich sie (noch) nicht veröffentlichen möchte, und ich eigentlich die wenige Zeit gerne für Aufbereitung der Inhalte verwenden möchte.

Danke für deine Unterstützung.

Gruß
nasziv

Moin,

kurze Infos zu Deinem Code:

  1. Bemühe regelmäßig den Validator: http://validator.w3.org/
  2. Lerne HTML: HTML wird nur zur logischen Auszeichnung des Inhalts verwendet. Also alles, was nicht Semantik ist, hat im HTML-Code nichts verloren. Der Validator meckert Dir das auch jetzt schon an. So Tags wie font oder center sind allein für das Aussehen und werden deshalb nicht benutzt. Nimm CSS dafür. Ebenso strong: Das dient dazu, besonder wichtige Textpassagen auszuzeichnen, es ist NICHT dafür gedacht, fetten Text zu erzeugen. Inline-Elemente dürfen nicht um Block-Elemente gestellt werden (wie font außerhalb von p). Die Überschriften passen auch nicht…aber ich könnte da viel, viel mehr schreiben … :smile:

Zu den Pfaden:

  1. „.“ beschreibt das aktuelle Verzeichnis. „./“ musst Du nicht voran stellen. Statt „./main“ reicht „main“. Es ist aber auch nicht falsch.
  2. Von der Startseite verweist Du auf das Verzeichnis „main/off_balance.html/“ - Ist das so gedacht? Einem Verzeichnis gibt man normalerweise keine Dateiendungen. Es ist nicht falsch, verwirrt aber - nicht zuletzt Dich, vermute ich.
    Du befindest Dich mit der Seite also im Verzeichnis „/main/off_balance.html/“. Das Bilderverzeichnis liegt aber in „/pics“. Wenn Du Dir das nicht geladene Bild anzeigen lässt, siehst Du die URL „/main/off_balance.html/pics/…“ - hast Du im Verzeichnis „off_balance.html“ ein Unterverzeichnis „pics“? Nein, dann muss das Image so adressiert werden:
    a) relativ: „…/…/pics/index1.png“
    b) absolut: „/pics/index1.png“
    Die absolute Adressierung hat hier den Vorteil, dass sie von jeder Seite aus richtig ist und Du nicht bei jeder Seite überlegen musst, in welchem Verzeichnis die Seite ist, wieviele Verzeichnisebenen Du also erst zurück gehen musst.
    Relative Pfadangaben haben dann einen Vorteil, wenn Du die ganze Site mit all ihren Verzeichnissen an einen anderen Ort kopieren willst, was wohl eher selten der Fall ist.

Argh, ich sehe gerade, Du hast auch noch unterschiedliche pics-Ordner. Du hast einen in „/pics/“, wo der pfeil3 drin liegt. Dein „index1.png“ liegt aber in „/main/pics/“, weswegen die Angaben oben nicht stimmen, sondern so lauten müssen:
a) relativ „…/pics/index1.png“
b) absolut „/main/pics/index1.png“

Hast Du da ein System drin? Steigst Du selber noch durch und weißt, welche Bilder Du in welches Verzeichnis gepackt hast?

Ach, und dann ist da noch, dass Du eine Seite „/main/off_balance.html/index.html“ und eine Seite „/main/off_balance.html“ hast, die beide den selben Inhalt haben. Die erste wird von der Startseite aus aufgerufen, die zweite aus dem Menü - das ist letztlich der Grund, warum Dein Bild beim ersten Mal nicht funktioniert, beim zweiten schon.

Der Fehler liegt also nicht in der Pfadangabe des Bildes, sondern dem „/“ am Ende des Seitennamens. „off_balance.html“ ist eine Datei, „off_balance.html/“ ist ein Verzeichnis.

Okay? :smile:

Liebe Grüße,
-Efchen

1 Like

Moin auch,

kurze Infos zu Deinem Code:
Argh, ich sehe gerade…

*lach*, dachte ich mir schon.

Ich benutze Phase5 als Editor, und dann erlaube ich mir so nette Fehler, aus einer Datei „main/off_balance.html“ ein Verzeichnis zu machen. Da hilft es wenig, wenn ich mit dem Editor den html-Code validiere.

  1. Bemühe regelmäßig den Validator: http://validator.w3.org/

Das ist so frustrierend…

  1. So Tags wie font oder center

Will ich bei Gelegenheit in CSS einpflegen, dazu fehlt mir momentan die Zeit

Zu den Pfaden:
Von der Startseite verweist Du auf das Verzeichnis „main/off_balance.html/“ - Ist das so gedacht?

Auf Verz. main ja, und dort auf die Datei off_balance.html
Somit klärt sich das Problem Bilder von selbst:

Das Bilderverzeichnis liegt aber in „/pics“.

und ich kann auch die beiden hilfsweise angelegten Ordner pics wieder auf einen reduzieren. Lag alles nur an den fehlerhaften Pfadangaben.

Hast Du da ein System drin?

Für die Site an sich im Kopf schon, mit der technischen Umsetzung hapert es leider.

Okay? :smile:

Vielen Dank, du hast mir wirklich sehr weiter geholfen mit deinen vielen Tipps. Werde ich in den nächsten freien Tagen alles mal umsetzen.

Gruß
nasziv

Moin,

  1. Bemühe regelmäßig den Validator: http://validator.w3.org/

Das ist so frustrierend…

Wenn man sich HTML aus falscher Quelle beibringt, kann ich das verstehen, ja.

  1. So Tags wie font oder center

Will ich bei Gelegenheit in CSS einpflegen, dazu fehlt mir
momentan die Zeit

Dann wird der Frust auch nicht weniger…

Zu den Pfaden:
Von der Startseite verweist Du auf das Verzeichnis „main/off_balance.html/“ - Ist das so gedacht?

Auf Verz. main ja, und dort auf die Datei off_balance.html

Ja, aber Du verweist ja auf ein Verzeichnis „off_balance.html/“. Das ist also falsch. Dass das funktioniert, heißt aber auch, dass Du da bewusst ein Verzeichnis mit dem Namen angelegt hast UND darin bewusst eine index.html angelegt hast. Aus Versehen kann man das doch nicht machen?

Lag alles nur an den fehlerhaften
Pfadangaben.

An dem Verzeichnis, das eine Datei sein sollte.

Vielen Dank, du hast mir wirklich sehr weiter geholfen mit
deinen vielen Tipps.

Immer wieder gern!

Liebe Grüße,
-Efchen

Moin,

Ja, aber Du verweist ja auf ein Verzeichnis „off_balance.html/“. Das ist also falsch. Dass das funktioniert, heißt aber auch, dass Du da bewusst ein Verzeichnis mit dem Namen angelegt hast UND darin bewusst eine index.html angelegt hast. Aus Versehen kann man das doch nicht machen?

Doch, ist tatsächlich so, dieses „/“ am Ende sollte nicht sein. Ich wäre nie darauf gekommen und hätte den Fehler nicht selbst bemerkt.

Und als nächstes werde ich mich Textformatierung/-auszeichnung in CSS auseinandersetzen (müssen :smile:

nasziv