Базовий HTML - як встановити відносний шлях до поточної папки?


85

Скажімо, я зараз перебуваю у: http://example.com/folder/page.html

Чи можна на цій сторінці створити відносне посилання, яке вказує, http://example.com/folder/не вказуючи folderніде? (І використовуючи лише HTML.)

ОНОВЛЕННЯ: Оскільки виявилось, він ./працює лише в несуворому режимі доктіпу, тоді як .працює в обох режимах, тому, на мій погляд, це все-таки краща відповідь :)


Чому хтось створює відносний шлях до поточного каталогу, коли за замовчуванням лише ім'я самого файлу в href передбачає поточний каталог?
Matthew

Відповіді:


94

Просто крапка працює. Однак тип доктрини має різницю, оскільки іноді ./ теж добре.

<a href=".">Link to this folder</a>

37

Для кожного, хто знайшов цей потік, адресація відносних шляхів завжди створювала аргументи щодо правильності чи ні.

Залежно від того, де ви використовуєте шлях, до якого потрібно звернутися, це буде залежати від того, як ви адресуєте шлях.

Загалом:

.і ./зробіть те саме, однак ви не використовували .б ім'я файлу. В іншому випадку у вас буде браузер, який запитує .filename.extяк файл із сервера. Правильний метод був би ./filename.ext.

../адресує шлях на один рівень від поточної папки. Якби ви знаходились у шляху /cheese/crackers/yummy.html, і ваш код посилання запитував ../butter/spread.htmlу документі yummy.html, тоді ви б адресували шлях /cheese/butter/spread.html, що стосується сервера.

/завжди буде звертатися до кореневої сторінки сайту.


12

Можна використовувати

 ../

означає на один рівень. Якщо у вас є сторінка з назвою page2.html в тій же папці, що і page.html, тоді відносний шлях:

 page2.html.

Якщо у вас є page2.html на одному рівні з папкою, тоді шлях:

  ../page2.html

Це відповіло на питання, яке я прийшов сюди шукати, як знайти сторінку в тій же папці.
jvangeld

10
<html>
    <head>
        <title>Page</title>
    </head>
    <body>
       <a href="./">Folder directory</a> 
    </body>
</html>

1
Ні. Це піднімається на один рівень вище. Мені потрібна поточна папка.
серг

3
Ні, це не так :) Крапка - це відповідь.
серг

1
Я перевіряю це в IE, Firefox та "." був таким самим, як "./" HTML 4.01 Перехідний. Це проблема типу документа?
MrChrister,

Хм, це може бути все. Я використовую суворий, мабуть, мав би про це згадати.
серг

3

Обидва наведені нижче дані, здається, працюють

./

.


1
Проте все не так, це піднімається на один рівень вище, чого він не просить ... Дивіться відповідь
Bullines

4
./ Піднятися на один рівень вище мені здається нісенітницею. чому це робить?
Йоханнес Шауб - літб,


2

Верхня відповідь недостатньо чітка. ось що мені вдалося: правильний формат повинен виглядати так, якщо ви хочете вказати на фактичний файл:

 <a href="./page.html">

Це дозволить вам вказати на цей файл у тій же папці, якщо ви знаходитесь на сторінці http://example.com/folder/index.html

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.