Раскрывающийся список
Рисунок 6.15. Раскрывающийся список Relative To и поле ввода URL диалогового окна Select File
Как вы уже поняли, абсолютный интернет-адрес применяется, если нужный файл находится на другом сайте. Внутри сайта используются относительные адреса: они значительно компактнее и не создают лишней путаницы.
Но какой способ задания относительных адресов выбрать? Это зависит от того, где находится файл, на который вы хотите сослаться. Если он располагается в той же папке, что и файл текущей страницы, или в одной из подпапок этой папки, лучше задать адрес относительно файла, т. к. он будет компактнее. Если же нужный файл находится в другой папке, не вложенной в ту, где расположен файл текущей страницы, лучше задать адрес относительно корневой папки.
Проиллюстрируем вышесказанное на примере. Предположим, есть сайт с такой физической структурой:
<Корневая папка> default.htm folder1 page1.htm folder2
page2.htm
folder3 раgе3.htm
И предположим, что нужно разместить на странице pagel.htm ссылки на страницы page2.htm и page3.htm. В таком случае правильно заданные интернет-адреса будут выглядеть следующим образом:
folder2/page2.htm /folder3/page3.htm
т. е. адреса задаются относительно файла — для pag62.htm и относительно корневой папки — для page3.htm. Если же мы поступим наоборот:
/folder1/folder2/page2.htm ../folder3/page3.htm
то смотрите сами, насколько громоздкими и запутанными стали адреса.
И еще. Если вы собираетесь публиковать сайт на Web-сервере, можете задавать относительные адреса как от файла, так и от корневой папки сайта. Но если ваш сайт будет существовать только в виде локальной копии (например, чисто учебный сайт, который никогда не будет опубликован в Сети, или сайт-прототип, предварительная версия), задавайте относительные адреса только от файла страницы. Адреса, заданные относительно корневой папки сайта, будут работать только под управлением программы Web-сервера; операционная система вашего компьютера просто не сможет их найти, поскольку будет отсчитывать адреса от корневой папки диска.
Для примера давайте сравним два наших интернет-адреса:
/folder3/page3.htm ../folder3/page3.htm
Предположим также, что локальная копия сайта находится в папке
с:\Projects\Sites\Sample1
Первый интернет-адрес задан относительно корневой папки сайта. Операционная система, однако, будет отсчитывать его от корневой папки диска, и результирующий путь будет таков:
с:\Folder3\page3.htm
что не соответствует действительности. Поэтому вы не сможете перейти на данную страницу, щелкнув по гиперссылке — операционная система не найдет этот файл, и Web-обозреватель выдаст сообщение об ошибке. В то же время, второй интернет-адрес, заданный относительно файла страницы, будет интерпретирован правильно:
c:\Projects\Sites\Samplel\Folder3\page3.htm
и операционная система без труда найдет нужный файл.