In CSS I know that I can reference/link to another file using either of the following:
photo.jpg
or ./photo.jpg
for a file in the same location as the one I am working in, and photo-folder/images/photo.jpg
or ./photo-folder/images/photo.jpg
to link a file in one or more directories below/inside the parent directory of the one I am working in.
I also know the same idea applies in HTML like ./[href]
or [href]
.
But I am wondering, let's say the positions of the files in my example are reversed, that is, I want to link to a photo in a directory which is the direct/indirect parent of the file I'm working in. How would I call that file without using the full drive address such as C:/Users/Username/Code/etc/photo.jpg
, while my working file is C:/Users/Username/Code/etc/code/file.css
...
How is it done in these languages: HTML, CSS, JS, Python? (You are welcome to answer for other languages, I might need it later! :D)
Side question: is there any technical difference between ./file
and file
, and would it be preferable to stick to one format over the other (e.g. to prevent problems, for readability, etc)? Though I have never run into any problems using either, or even combining both in the same project...
CodePudding user response:
To get to parent directory use ../
, this is "per directory", so if you need access several levels up, you'd need use: ../../../
(for 3 levels)
As of using ./
for current directory - it's redundant
As far as I know this is pretty much applies to all languages, however in HTML
/CSS
there is another relative path that can be used to get to the root of the domain: /
(no dots)
so for example if you open https://example/some/long/path/file.html
and need access to file at http://example/file.jpg
you simply put as relative path: /file.jpg