
Absolute oder relative Pfade verwenden? |
Freitag, 29. August 2008
|
||
Es gibt bestimmt manche die sich diese Frage schon gestellt haben. Hier versuche ich eine Antwort darauf und auf die Frage wo dort der Unterschied ist, zu geben.
Pfade verwendet man in Dateisystemen um die Dateien übersichtlicher für den Benutzer zu lagern. Jeder Heimanwender kennt dieses Prinzip und nutzt es täglich. Dabei ist der eigenen Organisation keine Grenzen gesetzt. Im Webdesign werden auch Verzeichnisse genutzt. Bilder kommen in den einen Ordner, Stylesheets in den Anderen, usw. Hier mal eine Beispiel-Hierarchie: root Wollen wir jetzt in unserer Website ein Bild verlinken müssen wir den Pfad zu dem Bild angeben. Dabei gibt es zwei verschiedene Möglichkeiten: relativ src="../images/bild.jpg" absolut src="/images/bild.jpg" Die beiden Varianten unterscheiden sich in diesem Beispiel nur durch zwei Pünktchen. Der Hintergrund ist jedoch etwas komplexer. Die beiden Pünktchen im relativen Link bedeuten: "gehe ein Verzeichnis hinauf". Also wir befinden uns in der index.html Datei, darin wird das Bild verlinkt. Die index.html liegt im html-Verzeichnis. Durch die zwei Pünktchen gehen wir jetzt eine Ebene hinauf - also ins root. Von da geht es dann weiter zum Images-Ordner in dem unser Bild liegt. Bei der absoluten Angabe haben wir keine Punkte sondern einen führendes Slash (/). Das sagt uns, dass es sich hierbei um einen absoluten Link handelt. Er geht immer vom obersten, verfügbaren Verzeichnis aus. Dieses Slash symbolisiert also unser Root-Verzeichnis. Bei Internetseiten handelt es sich dabei um die Domain. Steht in einem Link also "/bild.jpg" dann weiß man, dass dieses Bild unter www.domain.de/bild.jpg erreichbar sein muss. Wann verwende ich was? Im Prinzip ganz einfach. Wenn sich alle HTML-Dateien der Internetseite auf der gleichen Ordner-Ebene befinden, können relative Pfadangaben ohne Probleme benutzt werden. Folgende Hierarchie dient uns als Beispiel: root In diesem Beispiel befinden sich alle HTML-Dateien auf der gleichen Ebene. Innerhalb eines Unterverzeichnisses von Root. Wenn ich darin ein Bild verlinke mit zwei Punkten ("gehe ein Verzeichnis hinauf") lande ich immer im Root-Verzeichnis selbst. Habe ich aber folgende Struktur wird es problematisch: root Die index.html landet mit zwei Punkten im Root. Die produkt_a.html jedoch nicht. Dort gelangt man mit zwei Punkten in das Verzeichnis "produkte". Und darin befindet sich ja nicht unser Bilder-Ordner. Relative Pfadangaben können also genutzt werden wenn die Relation zwischen Bild und Datei immer gleich ist. Häufig ist das bei CMS-Systemen der Fall, die Pfade generieren wie z .B. index.php?startseite. Für den Browser befindet man sich immer in der Datei index.php, die im Root-Verzeichnis liegt und so sind die Pfade zu den Bildern immer gleich - auch wenn die Inhalte selbst ganz woanders herkommen. Benutzt man von Anfang an absolute Pfadangaben kann einem so etwas nicht passieren. Der Nachteil daran ist jedoch, dass die Pfade dann auch gerne mal etwas länger werden können. Damit die Internetseite übersichtlicher ist empfehle ich persönlich eher absolute Pfade. Dieses Prinzip gibt es übrigens nicht nur in HTML-Dateien sondern auch in CSS-Dateien - wenn also mal dort ein Background-Image definiert werden soll. ![]()
|
||
Letzte Aktualisierung ( Montag, 15. September 2008 ) |
< Zurück | Weiter > |
---|