Относительный адрес


Содержание

Абсолютные и относительные ссылки в HTML

Здравствуйте, уважаемые читатели блога Goldbusinessnet.com. В продолжение статьи о создании гиперссылок рассмотрим, что они из себя представляют в абсолютном и относительном варианте.

В принципе, в той публикации досконально разобран механизм, позволяющий формировать линки (от английского слова «link», одно из значений которого интерпретируется как «ссылка») на базе URL-адреса в самом различном исполнении с помощью средств HTML с целью их размещения в веб-пространстве (включая и страницы сайтов) в качестве составляющей части контента.

Так как гиперссылка, которая неразрывно связана с гипертекстом (здесь определение hypertext), является частным случаем ссылки, то в ракурсе рассматриваемой нами темы эти термины можно считать тождественными. Поэтому в ходе повествования я буду применять оба этих понятия.

При использовании абсолютных и относительных линков, естественно, существуют свои нюансы, которые я сегодня постараюсь до вас донести в понятной и доступной форме.

Абсолютный и относительный путь в ссылках

Давайте, пойдем сначала. Основным отличительным признаком любой ссылки является наличие URL адреса, который чаще всего содержит абсолютный путь (полный) до страницы или файла:

В таком виде мы вводим урлы в поисковую строку браузера для получения доступа с объекту. При этом любой URL обязательно начинается с наименования протокола передачи данных и включает имя домена («http://site.ru/»). Именно в подобном виде путь до объекта (вебстраницы или файла) используется в качестве параметра атрибута href при создании абсолютной ссылки с помощью средств HTML для ее последующей вставки в контент заданной странички (документ):

Абсолютные гиперссылки можно теоретически использовать везде, но на практике их применяют чаще тогда, когда нужно сослаться на внешний веб-ресурс, а относительные более эффективны при переходах в пределах одного сайта, поскольку они короче и не загромождают HTML код.

Варианты относительных ссылок

Ежели представленный выше пример полного пути в URL-адресе немного модифицировать, убрав «http:», то как раз получится образец относительного пути:

Если же привлечь средства ХТМЛ, то можно создать ссылку относительно протокола:

Такой вариант вполне работает не только в пределах домена, но и на сторонних веб-страницах, причем, независимо от того, какой протокол (HTTP или HTTPS) установлен для конкретного сайта. Поэтому на практике данный вид относительных ссылкок с успехом можно применить, к примеру, в случае перевода веб-проекта на безопасный протокол HTTPS.

Пойдем далее и вдобавок к названию протокола уберем еще и двойной слеш вместе с доменным именем. Получится другая вариация относительного пути:

На его основе таким же образом создается относительная гиперссылка:

Возьмем для наглядности пример с файликом (file1.html). Такой линк будет работать только лишь в том случае, если файл расположен в папке (каталоге), которая, в свою очередь, находится в составе корневой директории вебсайта. То есть, в данном случае путь до файла (в составе URL, который служит параметром атрибута href) будет указан относительно корня веб-ресурса:

В соответствии с предоставленным выше скриншотом вы, полагаю, уже поняли следующее. Ежели файлик (в нашем примере file2.html) входит напрямую в состав корневой директории, то путь к нему относительно корня (site.ru) примет такой вид:

Тут самый первый слеш «/» заменяет корневую папку «site.ru/». То есть, при создании перехода на главную страницу сайта с любой его страницы можно использовать короткую конструкцию:

Тот же самый принцип работает и при проставлении линков с одной веб-страницы проекта на другую. Образцом может служить тот же блог WordPress, где есть главная страница, статические и привязанные к определенным рубрикам (категориям) вебстраницы записей.

Скажем, с абсолютно любой странички проекта можно проставить относительную ссылку на иную страницу с указанием рубрики. Возьмем для примера этот блог:

А, скажем, относительная ссылка на статическую вебстраницу (которая не принадлежит ни одной рубрике, но входит в состав корневой папки «Goldbusinessnet.com») с любой другой странички в пределах одного проекта может выглядеть так:

Итак, мы выяснили, что гиперлинки именно относительно корневой папки обычно и используются на практике, когда необходимо сослаться с одной страницы сайта на другую.

Теперь давайте рассмотрим еще несколько случаев создания линков относительно текущего веб-документа (файла или web-страницы), а не корня сайта. Здесь один из файлов будет донором (с которого проставлена ссылка), а другой акцептором (на который ведет гиперссылка).

1. Файлы расположены в одной папке:

В этом случае относительная ссылка будет содержать только лишь название документа, который является акцептором (обратите внимание, что знак слеша тут опущен, так как путь указывается не относительно корня, а вполне конкретной папки):

2. Файлы находятся в разных директориях, причем документ, на который необходимо сослаться, располагается внутри каталога, находящегося в одной папке, содержащей донор:

Тогда в процессе создания относительной гиперссылки в содержании донора следует прописать дополнительно директорию, где находится акцептор:

Если целевой файл, на который указывает ссылка, находится еще на уровень ниже относительно донорского документа в иерархической структуре (к примеру, располагается в catalog3, который вложен в catalog2), то путь будет таким:

Ну и так далее, в зависимости от количества вложенных друг в друга директорий.

3. Теперь разберем обратную ситуацию, когда документ-акцептор располагается на уровень (или несколько) выше донорского файла:

При таком раскладе перед наименованием файлика необходимо поставить слэш «/» и двоеточие, означающее, что акцептор расположен на один уровень выше:

Если документ, на который ссылаются, находится на целых два уровня выше (скажем, донорский документ пребывает в папке catalog3, которая вложена в catalog2), то HTML код относительной гиперссылки примет следующий вид:

Как вы, наверное, поняли, подобных уровней может быть сколько угодно много, все зависит от файловой структуры вашего веб-проекта. Чем больше уровней между акцептором и донором, тем большее количество двоеточий и слэшей необходимо указать.

4. Есть еще вариант, когда акцептор и донор расположены в разных папках одного уровня:

Для того, чтобы сформировать относительный гиперлинк, нужно перейти на один уровень выше (catalog), а в пути указать директорию документа, на который будем ссылаться:

5. Ну и теперь самый сложный случай. Это когда документ, содержащий относительную ссылочку, и файл, на который она ведет, располагаются в разных папках, причем директория с донором находится на один или несколько уровней выше папки с акцептором:

Если разница 1 уровень, то относительной ссылкой является такая:

Я привел только основные примеры относительных ссылок, на самом деле их гораздо больше. Но главное — понять суть алгоритма их создания, что, надеюсь, вам удалось. Тем более, что все другие вариации будут просто производными от выше указанных.

Особенности относительных и абсолютных гиперссылок

Ежели в качестве целевого объекта абсолютной или относительной ссылки указать не файл, а всю директорию, то в конце URL желательно прописывать слеш:

Тем самым вы указываете серверу, что необходимо открыть для просмотра весь каталог, а не конкретный файл. Если же опустить значок «/» и оформить гиперссылку вот так:

То серверный обработчик сначала начнет поиски файла «uploads», именно в таком виде (без расширения), а уже затем отыщет папку с таким именем. Посему, проставив сразу же слеш, вы сэкономите ресурсы сервера, на котором располагается сайт.

Также необходимо иметь ввиду, что в целях безопасности содержимое любого рабочего каталога сайта должно быть скрыто. Поэтому веб-сервер обычно сконфигурирован таким образом, чтобы воспрепятствовать отображению его файлов. Например, вместо этого может быть показан пустой индексный файл index.php либо index.html (в браузере это будет просто белая страница).

Я настоятельно рекомендую проверить, так ли обстоит дело на вашем сайте. Например, если у вас вебпроект под управлением Вордпресс, то изучите соответствующий материал, повествующий о базовых настройках защиты при использовании в том числе этого метода (правда, в современных версиях WP данная ситуация уже под контролем, но проверка не помешает).

В общем-то, принцип создания абсолютных и относительных ссылок действует и в отношении стандартных вебстраниц сайта. Но, поскольку львиная доля вебмастеров (особенно это касается владельцев полномасштабных веб-ресусов, а не простеньких дневников и одностраничников) использует для управления веб-ресурсом CMS, то здесь есть некоторые нюансы.

Что касается главной страницы, то абсолютная ссылка на нее включает доменное имя, которое является названием корневой папки в соответствии с файловой структурой сайта на сервере:

Образец относительного линка в отношении главной я уже приводил, но повторю еще раз:

Если вы желаете подробнее изучить нюансы применения адресов в относительных и абсолютных ссылках именно для всех страниц своего сайта, то почитайте соответствующий раздел статьи об урлах, где сможете, например, узнать, почему любой URL (со слешем или без в конце) является корректным в плане синтаксиса и полностью отвечает установленным стандартам.

Относительный адрес

Освойте бесплатно наиболее простой, быстрый и гибкий способ создавать адаптивные веб-сайты.

Дизайн лендинга

Создавайте дизайн любых сайтов — для себя и на заказ!

Популярное

  • Главная
  • ->
  • Материалы
  • ->
  • Анатомия URL и относительные адреса

Reg.ru: домены и хостинг

Крупнейший регистратор и хостинг-провайдер в России.

Более 2 миллионов доменных имен на обслуживании.

Продвижение, почта для домена, решения для бизнеса.

Более 700 тыс. клиентов по всему миру уже сделали свой выбор.

Бесплатный Курс «Практика HTML5 и CSS3»

Освойте бесплатно пошаговый видеокурс

по основам адаптивной верстки

на HTML5 и CSS3 с полного нуля.

Фреймворк Bootstrap: быстрая адаптивная вёрстка

Пошаговый видеокурс по основам адаптивной верстки в фреймворке Bootstrap.

Научитесь верстать просто, быстро и качественно, используя мощный и практичный инструмент.

Верстайте на заказ и получайте деньги.

Что нужно знать для создания PHP-сайтов?

Ответ здесь. Только самое важное и полезное для начинающего веб-разработчика.

Узнайте, как создавать качественные сайты на PHP всего за 2 часа и 27 минут!

Создайте свой сайт за 3 часа и 30 минут.

После просмотра данного видеокурса у Вас на компьютере будет готовый к использованию сайт, который Вы сделали сами.

Вам останется лишь наполнить его нужной информацией и изменить дизайн (по желанию).

Изучите основы HTML и CSS менее чем за 4 часа.

После просмотра данного видеокурса Вы перестанете с ужасом смотреть на HTML-код и будете понимать, как он работает.

Вы сможете создать свои первые HTML-страницы и придать им нужный вид с помощью CSS.

Бесплатный курс «Сайт на WordPress»

Хотите освоить CMS WordPress?

Получите уроки по дизайну и верстке сайта на WordPress.

Научитесь работать с темами и нарезать макет.

Бесплатный видеокурс по рисованию дизайна сайта, его верстке и установке на CMS WordPress!

Хотите изучить JavaScript, но не знаете, как подступиться?

После прохождения видеокурса Вы освоите базовые моменты работы с JavaScript.

Развеются мифы о сложности работы с этим языком, и Вы будете готовы изучать JavaScript на более серьезном уровне.


*Наведите курсор мыши для приостановки прокрутки.

Анатомия URL и относительные адреса

Наиболее часто используемая схема URL — это http схема. Схема http используется для поиска документов, которые находятся на веб-серверах.

Веб-сервер правильнее называть HTTP-сервером. HTTP — это HyperText Transfer Protocol (Протокол Передачи Гипертекста), специально разработанный для передачи документов по сети Интернет. Он используется для передачи практически любых документов, которые мы загружаем при использовании браузера.

URL со схемой http можно разбить на подчасти, как показано ниже:

1. http

Первая часть — имя схемы, об этом мы уже говорили (см. Структура HTML-документа, понятие URI и URL). Затем идет двоеточие и два слэша (//).

2. WebReference.com

Вторая часть — имя компьютера, на котором размещен документ. Возможно, Вы уже знаете, что такое имя компьютера, но на всякий случай немного поясню:

Компьютеры в Интернет имеют цифровые адреса, называемые IP-адресами. IP-адрес — это несколько групп чисел в диапазоне от 0 до 255. Например, IP-адрес компьютера, на котором запущен HTTP-сервер сайта WebReference.com, следующий:

Этот адрес работает наподобие телефонного номера. Если вы наберете его в адресной строке браузера, то браузер узнает, где расположен необходимый компьютер, и как с ним связаться.

Единственное неудобство таких адресов в том, что их очень сложно запомнить. Нет очевидной логики их формирования, и два связанных друг с другом компьютера могут иметь совершенно разные IP-адреса. Также, по техническим причинам, часто необходимо менять адреса компьютеров. Все это делает очень затруднительным процесс отслеживания IP-адреса.

Так была создана система, названная DNS (Domain Name Service или Domain Name System — Система / Сервис Доменных Имен). Назначение DNS — трансформировать имена компьютеров в IP-адреса. В этом случае компьютеры имеют имена, которые легко запомнить пользователям.

Такие адреса называются FQDN (Fully Qualified Domain Name — Полностью Определенное Доменное Имя, или просто Доменное Имя). Доменное Имя компьютера может быть использовано где угодно в сети для того, чтобы однозначно идентифицировать компьютер и перевести его имя в IP-адрес.

Например, доменное имя сайта codeharmony.ruwww.codeharmony.ru. По сути, это просто псевдоним; компьютер может иметь более одного доменного имени, каждое из которых указывает на один и тот же IP-адрес.

Можно, например, получить доступ к моему сайту, используя имя codeharmony.ru, а не www.codeharmony.ru, потому что это тоже алиас (псевдоним) того же самого компьютера.

На самом деле, компьютер может иметь много IP-адресов, но это я уже ухожу в технические детали. Действительно важно понимать то, что компьютеры в Интернет имеют IP-адреса, доменные имена являются способом ссылаться на них для того, чтобы их легче было запомнить, а сами доменные имена преобразуются в IP-адреса.

Заметьте, что доменные имена не чувствительны к регистру. www.codeharmony.ru — это то же самое, что и WWW.CODEHARMONY.RU и www.CodeHarmony.ru. Обычно доменные имена пишутся в нижнем регистре, но это не значит, что это единственный способ.

3. :80

Третяя часть URL, которая не является обязательной — это номер порта. Компьютеры имеют определенное количество так называемых портов. Смысл порта в том, что через него происходят взаимодействия определенного рода. Один поддерживает HTTP-взаимодействия, другой — передачу почты и т.п.

Порты имеют свои номера, и большинство взаимодействий «привязаны» к определенным портам, через которые эти взаимодействия осуществляются. HTTP-взаимодействия обычно идут через порт 80, но не обязательно. В случае, если используется порт 80, то его не нужно указывать, если же используется другой порт (что бывает крайне редко), то необходимо указывать его, используя знак двоеточия и номер порта.

4. html/tutorial2/2.html

Четвертая часть также не обязательна. Это путь до документа, который мы хотим запросить. Путь — это набор символов, разделенных слэшами (/). Это очень похоже на пути до папок и файлов на вашем обычном компьютере. Есть корневая папка (директория), внутри нее есть другие папки, которые, в свою очередь, могут содержать другие папки и файлы. Взгляните на следующие примеры:

/
/html/
/html/tutorial2/2.html
/html

В первом случае мы ссылаемся на корневую директорию. Второй вариант — ссылка на директорию /html/. Третий пример — ссылка на документ 2.html в папке /html/tutorial2/. Наконец, четвертый пример — ссылка на документ html в корневой директории, а не на папку /html/. Это так, потому что в четвертом примере нет в конце слэша.

Хотя большинство браузеров отлично разберутся с тем, что нужно отобразить при таком запросе, все же неправильно ссылаться на директорию без слэша в конце. Вполне возможно, что в одной папке могут оказаться папка и документ с одним именем.

Важно отметить такой момент: путь не имеет ничего общего с форматом возвращаемого документа. В случае с WebReference.com все вышеприведенные примеры вернут HTML-документ.

Также, «расширение» в конце третьего примера (часть .html) не обязательно означает тип документа, как это бывает на операционных системах семейства Windows. Документ http://WebReference.com/cgi-bin/suggest.cgi имеет расширение .cgi, но является при этом HTML-документом.

5. ?query

Пятая часть — строка запроса, которая также необязательна. По сути, строка запроса — это некие данные, предназначенные для того, чтобы их определенным образом обработала некоторая программа и вернула нужную информацию. Строка запроса состоит из знака вопроса (?), за которым идет передаваемая информация (она полностью зависит от того, какой программой будет производиться ее обработка).

Только что мы рассмотрели синтаксис URL-адресов со схемой http. Вы, вероятно, уже видели подобные адреса сотни раз, бороздя просторы сети; теперь Вы знаете, как они устроены. Ну а сейчас давайте рассмотрим понятие Относительных URL-адресов.

Относительные URL-адреса

URL-адреса, как Вы уже знаете, нужны для того, чтобы указать местоположение чего-то. Зачастую путь до «чего-то» может быть очень длинным, поэтому есть возможность для сокращения длины адресов, используя так называемые относительные адреса.

Все URL-адреса, которые мы рассматривали до этого были абсолютными. Они идентифицируют ресурсы независимо от их контекста. URL-адрес http://WebReference.com/html/ идентифицирует конкретную директорию в не зависимости от того, напечатали ли вы данный адрес в адресной строке, написали на клочке бумаги для своего друга, либо просто вспомнили «в голове».

Относительные же URL-адреса — это способ идентификации ресурса с учетом его контекста.

Вот простая аналогия.

Представьте, что Вы в гостях на Дне Рождения у друга и кто-то спрашивает Вас, где живет какой-то из Ваших знакомых. Вы, вероятно, ответите, что-то вроде: «А вот — через дорогу в 7 доме.» Едва ли Вы скажете: «В России, в г. Москва, в районе Таком-то, на улице Такой-то, в доме номер 7.» В данном случае такой ответ был бы избыточен.

Относительные URL-адреса — что-то вроде этого. Они похожи на объяснения, типа: «вниз по переулку, потом налево, через два квартала по правой стороне.» Они имеют смысл только, если используются в определенном контексте. И этот контекст называется Base URL (Базовый URL).

Базовый URL ресурса — это все, что находится в пределах пути, включая и слэш на конце. Вот некоторые примеры:

Абсолютный URL-адрес Базовый URL-адрес
http://WebReference.com/ http://WebReference.com/
http://WebReference.com/html/ http://WebReference.com/html/
http://WebReference.com/html/about.html http://WebReference.com/html/
http://WebReference.com/foo/bar.html?baz http://WebReference.com/foo/

Таблица ниже показывает относительные адреса, для которых базовым URL является http://WebReference.com/html/ а также те абсолютные адреса, в которые «превращаются» относительные.

Относительный URL-адрес Абсолютный URL-адрес
about.html http://WebReference.com/html/about.html
tutorial1/ http://WebReference.com/html/tutorial1/
tutorial1/2.html http://WebReference.com/html/tutorial1/2.html
/ http://WebReference.com/
//www.internet.com/ http://www.internet.com/
/experts/ http://WebReference.com/experts/
../ http://WebReference.com/
../experts/ http://WebReference.com/experts/
../../../ http://WebReference.com/
./ http://WebReference.com/html/
./about.html http://WebReference.com/html/about.html

Отметим также, что если относительный URL-адрес пуст (не содержит ни одного символа), то он указывает на тот же самый ресурс в котором находится сам.

Да, использование относительных адресов позволяет сэкономить немного времени, но это не повод их использовать.

Очень важно понять то, что они используются только для указания на ресурс в определенном контексте. Это принципиально. Потому что URL-адреса не могут всегда использоваться в одном и том же контексте.

По материалам www.webreference.com
Перевод — Дмитрий Науменко.

P.S. Обратите также внимание на уроки ниже. Первый бесплатный курс позволит вам освоить работу с HTML и научиться создавать «каркасы» для сайтов. Второй курс покажет 5 прикладных техник для «резиновой» верстки сайтов:

Понравился материал и хотите отблагодарить?
Просто поделитесь с друзьями и коллегами!

Относительный адрес ячейки в Excel

Относительный адрес ячейки в Excel – это такой адрес, который изменяется при переносе формулы или ссылки на ячейку в другое место текущего листа книги Excel.

Клик по ячейке текущего листа во время написания формулы по умолчанию создает относительную ссылку. Т.е. относительный адрес ячейки в Excel это такой адрес, который не является абсолютным, например «A1» или «RC[-1]» для стиля ссылок R1C1 (Стиль ссылок r1c1).

Если материалы office-menu.ru Вам помогли, то поддержите, пожалуйста, проект, чтобы мы могли развивать его дальше.

У Вас недостаточно прав для комментирования.

Типы ссылок MS EXCEL на ячейку: относительная (A1), абсолютная ($A$1) и смешанная (A$1) адресация

В формулах EXCEL можно сослаться на другую ячейку используя ее адрес. Адрес ячейки в формуле можно записать по-разному, например: А1 или $A1 или $A$1. То, каким образом вы введете адрес в формулу, будет зависеть, как он будет модифицироваться при ее копировании в другие ячейки листа. Это пригодится при как построении обычных формул на листе, так и при создании Именованных формул, задания правил Условного форматирования и при формировании условий Проверки данных.

В подавляющем большинстве формул EXCEL используются ссылки на ячейки. Например, если в ячейке В1 содержится формула =А1+5 , то означает, что в ячейку В1 будет помещено значение ячейки А1 находящейся на пересечении столбца А и строки 1, к которому прибавлено число 5. Также в формулах используются ссылки на диапазоны ячеек, например, формула =СУММ(А2:А11) вычисляет сумму значений из ячеек А2, А3, . А11. Однако, формула =СУММ($А$2:$А$11) также вычисляет сумму значений из тех же ячеек. Тогда в чем же разница?

Абсолютная адресация (абсолютные ссылки)

Для создания абсолютной ссылки используется знак $. Ссылка на диапазона записывается ввиде $А$2:$А$11 . Абсолютная ссылка позволяет при копировании формулы однозначно зафиксировать адрес диапазона или адрес ячейки. Рассмотрим пример.

Пусть в ячейке В2 введена формула =СУММ( $А$2:$А$11 ) , а в ячейке С2 формула =СУММ(А2:А11). Скопировав формулы вниз, например с помощью Маркера заполнения, во всех ячейках столбца В получим одну и ту же формулу =СУММ( $А$2:$А$11 ) , т.е. ссылка на диапазон ячеек при копировании не изменилась. А в столбце С получим другой результат: в ячейке С3 будет формула =СУММ(A3:A12) , в ячейке С4 будет формула =СУММ(A4:A13) и т.д. Т.е. при копировании ссылка была модифицирована.

Другой пример.

Пусть в диапазоне А1:А5 имеются числа (например, зарплата сотрудников отдела), а в С1 – процент премии установленный для всего отдела. Для подсчета премии каждого сотрудника необходимо все зарплаты умножить на % премии. Рассчитанную премию поместим в диапазоне В1:В5. Для этого введем в ячейку В1 формулу =А1*С1 . Если мы с помощью Маркера заполнения протянем формулу вниз, то получим в В2:В5 нули (при условии, что в диапазоне С2:С5 нет никаких значений). В ячейке В5 будем иметь формулу =А5*С5 (EXCEL при копировании формулы модифицировал ссылки на ячейки, т.к. их адреса не были записаны в виде абсолютных ссылок).

Чтобы выйти из ситуации — откорректируем формулу в ячейке В1.

  • выделите ячейкуВ1;
  • войдите в режим правки ячейки (нажмите клавишу F2) или поставьте курсор в Строку формул;
  • поставьте курсор на ссылку С1 (можно перед С, перед или после 1);
  • нажмите один раз клавишу F4. Ссылка С1 выделится и превратится в $C$1 (при повторных нажатиях клавиши F4 ссылка будет принимать последовательно вид C$1, $C1,C1, $C$1, …). Ссылка вида $C$1 называется абсолютной, C$1, $C1 – смешанными, а С1относительной.

Такм образом, введем в В1 формулу =А1*$С$1 . Это можно сделать и в ручную, введя знак $.

Нажмем ENTER и протянем ее вниз. Теперь в В5 будет правильная формула =А5*$С$1 . Всем сотрудникам теперь достанется премия :).

Относительная адресация (относительные ссылки)

Введем в ячейку B1 формулу =А1 , представляющую собой относительную ссылку на ячейку А1. Что же произойдет с формулой при ее копировании в ячейки расположенные ниже В1? После протягивания ее вниз Маркером заполнения, в ячейке В5 будет стоять формула =А5 , т.е. EXCEL изменил первоначальную формулу =A1 . При копировании вправо в ячейку С1 формула будет преобразована в =В1.

Внимание!
При использовании относительной адресации в Именованных формулах, Именованных диапазонах, Условном форматировании, Проверке данных (примеры см. в соответствующих статьях) необходимо следить, какая ячейка является активной в момент создания формулы (активной может быть только одна ячейка на листе, не смотря на то, что выделено может быть несколько).

Теперь примеры.

Пусть в столбце А введены числовые значения. В столбце B нужно ввести формулы для суммирования значений из 2-х ячеек столбца А: значения из той же строки и значения из строки выше.

Т.е. в B2 должна быть формула: =СУММ(A1:A2) , в B3: =СУММ(A2:A3) и т.д.

Решить задачу просто: записав в B2 формулу =СУММ(A1:A2) , протянем ее с помощью Маркера заполнения в ячейку B3 и ниже. Другим вариантом решения этой задачи является использование Именованной формулы. Для этого:

  • выделите ячейку B2 (это принципиально при использовании относительных ссылок в Именах). Теперь B2 – активная ячейка;
  • на вкладке Формулы в группе Определенные имена выберите команду Присвоить имя;
  • в поле Имя введите, например Сумма2ячеек;
  • убедитесь, что в поле Диапазон введена формула =СУММ(A1:A2)
  • Нажмите ОК.

Теперь в B2 введем формулу =Сумма2ячеек . Результат будет тот, который мы ожидали: будет выведена сумма 2-х ячеек из столбца слева (см. файл примера , лист пример1). Если формулу ввести в ячейку B5, то она будет суммировать ячейки A4:A5, если ввести в D10, то – ячейки С9:С10.

Другими словами, будут суммироваться 2 ячейки соседнего столбца слева, находящиеся на той же строке и строкой выше. Ссылка на диапазон суммирования будет меняться в зависимости от месторасположения формулы на листе, но «расстояние» между ячейкой с формулой и диапазоном суммирования всегда будет одинаковым (один столбец влево).

Относительная адресация при создании формул для Условного форматирования.

Пусть необходимо выделить в таблице, содержащей числа от 1 до 100, значения больше 50, причем, только в четных строках (см. файл примера , лист пример2). Построим такую таблицу:

  • выделите диапазон таблицы B2:F11, так, чтобы активной ячейкой была B2 (важно выделить диапазон начиная с B2, а не с F11. Во втором случае, активной ячейкой будет F11);
  • вызовите инструмент Условное форматирование ( Главная/ Стили/ Условное форматирование/ Создать правило/ использовать формулу для …);
  • введите формулу =И(ОСТАТ($A2;2)=$I$1;B2>50) ;
  • выберите Формат;
  • нажмите ОК

Важно отметить, что, если бы, при создании правила, активной ячейкой была F11, то формулу необходимо было переписать: =И(ОСТАТ($A11;2)=$I$1;F11>50) . Поменять необходимо только ссылки незафиксированные знаком $: B2 на F11 и $A2 на $A11.

Смешанные ссылки

Смешанные ссылки имеют формат =$В3 или =B$3 . В первом случае при копировании формулы фиксируется ссылка на столбец B, а строка может изменяться в зависимости при копировании формулы.

Предположим, у нас есть столбец с ценами в диапазоне B3:B6 (см. файл примера , лист пример3). В столбцах С, D, Е содержатся прогнозы продаж в натуральном выражении по годам (в шт.). Задача: в столбцах F, G, H посчитать годовые продажи в рублях, т.е. перемножить столбцы С, D, Е на столбец B. Использование механизма относительной адресации позволяет нам ввести для решения задачи только одну формулу. В ячейку F вводим: =$В3*C3 . Потом протягиваем формулу маркером заполнения вниз до F6,

а затем весь столбец таблицы протягиваем вправо на столбцы G и H.

Обратите внимание, что в формуле =$В3*C3 перед столбцом B стоит значок $. При копировании формулы =$В3*C3 в ячейки столбцов F, G и H, этот значок $ говорит EXCEL о том, что ссылку на столбец B модифицировать не нужно. А вот перед столбцом С такого значка нет и формула в ячейке H6 примет вид =$В6*E6 .

Вводим знак $ в адрес ячейки

Существует несколько возможностей при вводе формулы ввести знак $ в адрес ячейки или диапазона. Рассмотрим ввод на примере формулы =СУММ($А$2:$А$5)


1. Ввести знак $ можно вручную, последовательно вводя с клавиатуры все знаки =СУММ($А$2:$А$5)

2. С помощью клавиши F4 (для ввода абсолютной ссылки):

  • Введите часть формулы без ввода $: =СУММ(А2:А5
  • Затем сразу нажмите клавишу F4, знаки $ будут вставлены автоматически: =СУММ( $А$2:$А$5
  • Для окончания ввода формулы нажмите ENTER.

Если после ввода =СУММ(А2:А5 в формуле передвинуть курсор с помощью мыши в позицию левее,

а затем вернуть его в самую правую позицию (также мышкой),

то после нажатия клавиши F4, знаки $ будут автоматически вставлены только во вторую часть ссылки! =СУММ( А2:$А$5

Чтобы вставить знаки $ во всю ссылку, выделите всю ссылку А2:$А$5 или ее часть по обе стороны двоеточия, например 2:$А , и нажмите клавишу F4. Знаки $ будут автоматически вставлены во всю ссылку $А$2:$А$5

3. С помощью клавиши F4 (для ввода относительной ссылки).

  • Введите часть формулы без ввода $: =СУММ(А2:А5
  • Затем сразу нажмите клавишу F4, будут автоматически вставлены знаки $: =СУММ( $А$2:$А$5
  • Еще раз нажмите клавишу F4: ссылка будет модифицирована в =СУММ( А$2:А$5 (фиксируются строки)
  • Еще раз нажмите клавишу F4: ссылка будет модифицирована в =СУММ($ А2:$А5 (фиксируется столбец)
  • Еще раз нажмите клавишу F4: ссылка будет модифицирована в =СУММ( А2:А5 (относительная ссылка). Последующие нажатия изменяют ссылку заново по кругу.
  • Для окончания ввода нажмите ENTER.

Чтобы изменить только первую или втрорую часть ссылки — установите мышкой курсор в нужную часть ссылки и последовательно нажимайте клавушу F4.

«СуперАбсолютная» адресация

В заключении расширим тему абсолютной адресации. Предположим, что в ячейке B2 находится число 25, с которым необходимо выполнить ряд вычислений, например, возвести в разные степени (см. файл примера , лист пример4). Для этого в столбце C напишем формулу возведения в степень (значения степени введем в столбец D): =$B$2^$D2 .

Мы использовали абсолютную ссылку на ячейку B2. При любых изменениях положения формулы абсолютная ссылка всегда будет ссылаться на ячейку, содержащую наше значение 25:

  • при копировании формулы из С3 в Н3 – формула не изменится, и мы получим правильный результат 625;
  • при вставке нового столбца между столбцами А и В – формула превратится в =$C$2^$E3 , но мы снова получим правильный результат 625.

Все правильно, т.к. это и есть суть абсолютной адресации: ссылки автоматически модифицируются для сохранения адресации на нужные ячейки при любых модификациях строк и столбцах листа (ну, кроме удаления ячейки с формулой, конечно). Однако бывают ситуации, когда значения на лист попадают из внешних источников. Например, когда созданный пользователем макрос вставляет внешние данные в ячейку B2 (т.е. всегда во второй столбец листа). Теперь, при вставке столбца между столбцами А и В – формула как и раньше превратится в =$C$2^$E3 , но т.к. исходное число (25) будет вставляться макросом не в С2, а по прежнему в ячейку B2, и мы получим неправильный результат.

Вопрос: можно ли модифицировать исходную формулу из С2 ( =$B$2^$D2 ), так чтобы данные все время брались из второго столбца листа и независимо от вставки новых столбцов?

Решение заключается в использовании функции ДВССЫЛ() , которая формирует ссылку на ячейку из текстовой строки. Если ввести в ячейку формулу: =ДВССЫЛ(«B2») , то она всегда будет указывать на ячейку с адресом B2 вне зависимости от любых дальнейших действий пользователя, вставки или удаления столбцов и т.д.

Небольшая сложность состоит в том, что если целевая ячейка пустая, то ДВССЫЛ() выводит 0, что не всегда удобно. Однако, это можно легко обойти, используя чуть более сложную конструкцию с проверкой через функцию ЕПУСТО() :

При ссылке на ячейку В2 с другого листа =ДВССЫЛ(«пример4!B2») может возникнуть и другая сложность: при изменении названия листа пример4 – формула перестает работать. Но это также можно обойти – см. пример из статьи Определяем имя листа.

Другим способом заставить формулу ссылаться на один и тот же столбец является использование функции СМЕЩ() – об этом читайте статью Как заставить формулу все время ссылаться на один и тот же столбец.

Абсолютные относительные адреса ячеек в формуле

Перед началом работы с формулами первое, что нужно изучить – это адресацию ссылок на ячейки. Чтобы уметь правильно обращаться к данным. И только потом уже следует изучать функции.

Если в ячейке введен первый символ знак «=», то все что будет введено дальше, для Excel является одним из параметров:

Причину ошибки иногда очень сложно отследить в длинных формулах и тогда их следует прослеживать пошагово.

Абсолютный адрес ячейки

Допустим, нам нужно посчитать стоимость за сутки проживания в отелю Еврозоне. Все цены представлены в валюте евро сконвертируем в рубли по курсу 1 EUR = 74 RUB. Курсы валют изменяются каждый день, поэтому нужно сделать прайс так, чтобы можно было легко и просто вычислить актуальные цены в рублях. Вычислим цены с помощью формул с абсолютными или смешанными адресами ячеек так, чтобы не нужно было изменять в них формулы при каждом изменении курса валют. Изменения будут вноситься только в одну ячейку. Для этого введем формулу: =B2*$D$2 или: =B2*D$2, в ячейку С2 как показано на рисунке:

В адресах, которые ссылаются на ячейку D2 следует заблокировать символом ($) номер строки 2. Тогда при автозаполнении ячеек формулы будут иметь один фиксированный параметр. То есть, несколько ячеек будут ссылаться на одну и ту же ячейку. При том нам в данной ситуации, не важно будет ли заблокирован столбец символом ($) или нет. Поэтому здесь можно использовать абсолютную ($D$2) или смешанную(D$2) ссылку.

Стоит отметить, что первый множитель у нас имеет относительную ссылку (B2), что позволило нам автоматически подставить правильные параметры формулы относительно каждой ячейки при автозаполнении.

Горячие клавиши абсолютной ссылки

Чтобы упростить ввод разного типа ссылок в Excel можно воспользоваться горячей клавишей F4, которая при поочередном нажатии работает как переключатель между типами ссылок:

  • абсолютный;
  • смешанный с фиксированной строкой;
  • смешанный с фиксированным столбцом;
  • относительный.

Чтобы убедиться, как это удобно работает, сделайте следующее:

  1. В любой пустой ячейке введите знак равно (=).
  2. Щелкните левой кнопкой мышки по любой дугой ячейке, на которую будет ссылаться исходная ячейка. В строе формул отобразиться ее адрес.
  3. Переодически нажимайте клавишу F4 и наблюдайте над тем, как меняется тип ссылки (сначала на абсолютный тип и т.д.).

Благодаря формулам программа Excel является сильным и эффективным инструментом, который выполняет сложнейшие вычислительные операции с данными. Excel без формул был бы мертвой таблицей со строками и столбцами разбитой на множество ячеек. Такая таблица способна только форматировать отображение данных. Адресам ссылок можно присваивать имя, но об этом на следующих уроках.

Абсолютный и относительный url в HTML ссылках

Дата изменения: 24.09.2015

Абсолютный URL

Адрес ссылки может быть абсолютным, либо относительным. Абсолютные адреса должны начинаться с указания протокола (http:// или https://) и содержать доменное имя сайта (к примеру brainoteka.com). Относительные ссылки указываются относительно от корня сайта или текущего документа.

Так выглядит абсолютная ссылка на ресурс brainoteka.com

Ссылки относительно текущего документа (Относительный url)

При создании относительных ссылок необходимо учитывать, какое значение для атрибута href следует указывать, поскольку оно зависит от исходного расположения файлов. Вот несколько примеров

При указании относительных ссылок, нужно учитывать, что значение атрибута href будет зависеть от исходного расположения файлов на сервере.

Ссылки на файлы, расположенные в одной папке

В этом случае код будет следующий.

Файлы размещенные в разных папках (уровень вверх)

Когда исходный документ хранится в одной папке, а ссылаемый в корне сайта, то перед именем файла в адресе ссылки ставится две точки и слэш (/), как показано ниже.

Две точки означают выйти из текущей папки на уровень выше.

Файлы размещаются в разных папках (2 уровня вверх)

В данном случае чтобы сослаться на документ в корне сайта, требуется повторить написание предыдущего примера дважды.

Ну и по аналогии, на сколько уровней вверх нам будет необходимо перейти вверх, столько раз, данная конструкция и будет повторяться

Файлы размещаются в разных папках (Уровень вниз)

Теперь, исходный файл располагается в корне сайта, а файл, на который необходимо сделать ссылку — в папке. Как изменится значение href в данном случае?

Заметьте, что никаких дополнительных точек и слэшей перед именем папки нет. Если файл находится внутри не одной, а двух папок, то путь к нему записывается так.

Ссылки относительно корня сайта

Иногда можно встретить путь к файлу относительно корня сайта, он выглядит как «/Папка/Имя файла» со слэшем вначале. Так, запись

означает, что ссылка ведет в папку с именем Content, которая располагается в корне сайта, а в ней необходимо загрузить индексный файл.

Относительный адрес

Как Вы знаете, в качестве значения атрибута href тега необходимо указать путь к файлу, на который делается ссылка.

Или, например, значением атрибута src тега является путь к файлу с изображением, которое будет располагаться на странице.

Путь к файлу — это его адрес. Адрес может быть абсолютным и относительным.

Абсолютный адрес

Абсолютный адрес работает везде, где прописана ссылка — независимо от имени сайта и его расположения.

Например ссылка http://www.webpupil.ru является абсолютной и ведет на главную страницу этого сайта.

Ссылка http://www.webpupil.ru/articles.php также является абсолютной и указывает путь к странице сайта www.webpupil.ru , содержащей перечень статей — файлу articles.php .

Таким образом абсолютный адрес или путь — это полный путь к файлу, начинающийся с указания протокола http с двоеточием и двумя символами слэш « :// », затем указывают адрес сайта: в нашем случае — это www.webpupil.ru и через слэш « / » непосредственно имя файла — articles.php .

Если файл расположен не в корневом каталоге сайта ( Корневой каталог/папка — это каталог, который не является подкаталогом ни одного другого каталога), а скажем в папке folder (то есть расположен во вложенной папке), то для задания его полного адреса следует после имени сайта указать имя папки, а затем имя самого файла: http://www.webpupil.ru/folder/articles.php

Любую абсолютную ссылку (содержащую адрес сайта) можно разместить на любой странице любого сайта и она будет рабочей, то есть, кликнув по ней, пользователь обязательно перейдет по указанному в ней адресу.

Абсолютная адресация как правило используется для создания ссылок на другие сайты. Конечно такие ссылки можно использовать и внутри сайта, но подобное происходит редко, так как в основном абсолютные ссылки длинны и неудобны.

Относительный адрес

Для перехода между страницами внутри сайта используют относительные ссылки. Относительный путь к файлу указывают относительно текущего документа или относительно корневого каталога.
И здесь возможны варианты.

Приведем несколько примеров.

1 Вариант — файлы расположены в одной папке

Главная страница этого сайта — файл index.php и страница, содержащая перечень статей — файл articles.php находятся в корневом каталоге (в одной папке). Для создания ссылки с одной из этих страницы на другую, необходимо в качестве значения атрибута href тега указать имя файла, на который делается ссылка.

2 Вариант — ссылка на файл, расположенный во вложенной папке

Файл articles.php находится в корневом каталоге, а файл с изображением, которое необходимо вставить на страницу располагается в папке img корневого каталога (во вложенной папкето есть в папка расположенной внутри другой. Условно назовем это первым уровнем вложенности).

Для указания пути к файлу с изображением необходимо сначала указать имя папки, в которой расположен нужный файл, а затем через слэш « / » непосредственно имя файла.

«img/peng_64.gif» >
Относительный путь к файлу с изображением.

Относительный путь к файлу с изображением.

3 Вариант — ссылка из вложенной папки

Теперь наоборот: допустим текущий файл находится во вложенной папке, а файл index.php , на который делается ссылка, расположен в корневом каталоге. Тогда ссылка (из файла, расположенного во вложенной папке) на файл index.php будет иметь следующий вид:

То есть перед именем файла, на который делается ссылка из вложенного каталога, необходимо поставить две точки и слэш « ../ ».

И последний вариант.

Текущий документ имеет второй уровень вложенности, то есть он расположен в папке, которая уже является вложенной.

Тогда, чтобы сделать ссылку на файл, который расположен в корневом каталоге, необходимо добавить еще две точки и слэш « ../ ».


Таким образом относительные ссылки (или относительный адрес/путь к файлу) используют для организации ссылочной структуры между файлами, которые являются страницами одного сайта, а также файлами, содержащими изображения, фотографии и другие объекты, которые также непосредственно относятся к этому сайту.

То есть все файлы: и страницы, и различные объекты, вставляемые на эти страницы, расположены на разных уровнях вложенности, но в одном — корневом каталоге.

Если требуется сослаться на какую-либо страницу другого сайта или вставить какой-либо объект, расположенный на другом сайте, то здесь мы уже работаем с абсолютной адресацией.

Абсолютный и относительный путь к файлам

Категории блога

При разработке сайта часто приходится прописывать пути к файлам, ссылки на документы, страницы.
В книгах по компьютерным технологиям можно часто встретить употребление терминов абсолютного и относительного пути к файлам. Часто автор не разъясняет, что означает тот или иной путь. Читатель, соответственно, путается, когда автор в последствии говорит об использовании абсолютного и(или) относительного пути.
Допустим, у Вас есть сайт и Вам нужно создать гиперссылку(ссылку) на одну из страниц сайта. Здесь нужно выбрать какой использовать тип пути: относительный или абсолютный.

Очень важно понимать, где какой путь нужно и лучше использовать. Абсолютный путь можно указать только одним способом. А вот относительный в отличии от абсолютного имеет несколько вариантов использования.
Подробнее о том как и где используется абсолютный и относительный путь к файлам, я попытаюсь вам сегодня рассказать.

Так как большую часть своего времени я уделяю web-технологиям, то примеры буду приводить относящиеся к созданию сайтов.

Оглавление

Абсолютный путь

Когда ссылка представляет из себя полный URL файла или страницы, это и есть абсолютный путь. При этом в адресе должен присутствовать используемый протокол. Например, http://www.uamedwed.com — это абсолютный путь к конкретному веб-сайту. В данном случае абсолютный путь к главной странице моего блога. Где протоколом является http, а www.uamedwed.com доменом(именем).

Если указывать ссылку на католог, например http://yourdomain.ua/web/ то будет загружаться(отображаться) индексный файл. Это правило применимо в основном к статическим сайтам. Так как при использовании языка программирования можно создать внутренний роутинг. Индексный файл обычно представляет из себя файл с именем index.php, index.html, index.phtml, index.shtml. Для того что бы использовать другой индексный файл, нужно создать в нужной директории файл с именем .htaccess, и в нем прописать некоторую директиву. Изменение и создание файла .htaccess, как и роутинг с помощью языка программирования, выходит за рамки этой статьи.

В основном абсолютный путь используется, тогда, когда нужно сослаться на другой сайт. Иными словами если Вы хотите отправить посетителя на другой сайт, то нужно использовать абсолютный путь. Хотя, такой путь можно использовать и на собственном сайте. Но многие придерживаются того, что ссылки внутри сайта должны быть относительными.
Использование абсолютного пути может повлечь за собой некоторые проблемы. Например при переносе сайта с локальной машины на сервер(это в том случае, если вы использовали на локальной машине адреса в виде http://localhost/sitename.ua/…). Трудности могут возникнуть, тогда, когда появится необходимость в смене домена(имени сайта). Хотя, все эти трудности решаемы, но на них придётся потратить некоторое количество времени.
Когда есть минусы, значит должны быть и плюсы. Возьмём к примеру такую ситуацию, как кража контента с вашего сайта. На практике я уже не раз убедился в том, что текст воруют целиком, при этом не оставляя обратной ссылки на оригинал. Так вот, при использовании абсолютных путей, можно получить обратные ссылки с сайта, на котором находится сворованный контент. Но это только в том случае если у Вас внутренняя перелинковка осуществлялась с использованием абсолютных путей. Хотя это не всегда работает, но я уже не раз замечал появление ссылок с чужих сайтов, на которых был расположен мой контент.

Немного отступив от темы хочу вкратце рассказать про то что такое URL.

Каждая веб-страница или документ в сети Интернет имеет собственный уникальный адрес, который и называется URL.
URL — единообразный локатор (определитель местонахождения) ресурса. Расшифровывается URL как Uniform Resource Locator(унифицированный адрес ресурса). Можно так же встретить и такую расшифровку как Universal Resource Locator(универсальный локатор ресурса). Этот способ записи адреса стандартизирован в сети Интернет. Более общая и широкая система идентификации ресурсов URI постепенно заменяет термин URL.
URI — это символьная строка, которая идентифицирует какой-либо ресурс: документ, файл, и т.д. Конечно, здесь подразумеваются ресурсы сети Интернет.

Относительный путь

Часто относительные пути используются гораздо чаще чем абсолютные пути. В основном относительный путь указывается тогда, когда Вам нужно отправить посетителя на другую страницу Вашего сайта, или вставить объект (например изображение) на одной из страниц. При этом использование относительно пути вполне оправдано. В зависимости от структуры сайта, зависит то, какую форму относительного пути нужно использовать. Существует два вида относительного пути: путь относительно документа, путь относительно корня сайта.

Путь относительно документа

Именно путь относительно документа используется чаще всего. Такие ссылки ещё называются локальными. В основном такой путь используется тогда, когда текущий и связанный документ(страница) находятся в одной директории. Если переместить документ в другую директорию, то путь(ссылку) придётся менять. Хотя можно ссылаться и на документы(страницы) из других директорий. Для этого путь прописывается от текущего документа до целевого документа(страницы). При этом путь относительно документа должен задаваться в зависимости от структуры директорий.
Возьмём к примеру простейшую структуру статического сайта.

Предположим, что каждое изображение в каталоге images нужно вставить в соответствующие страницы home.html, products.html, contact.html. Для того что бы вставить изображение к примеру на страницу «home.html», нужно прописать путь, где расположено изображение. Если использовать путь относительно документа, то нужно будет прописать в коде страницы следующее:

Этот код для вставки изображения на страницу — неполный. Так как он не содержит нескольких важных атрибутов, таких как ширина, высота и др. Атрибут src, здесь служит для указания пути к файлу. Здесь опущены все остальные атрибуты, так как они сейчас не столь важны. Главное сейчас, что бы Вы имели представление о том, как выглядит путь относительно документа.
При использовании путей относительно документа отсутствует часть абсолютного пути. Часть абсолютного пути, здесь усекается, как для текущего документа(страницы), так и для связанного. Здесь используется только та часть пути, которая всегда меняется.
Напомню ещё раз про то, что при использовании пути относительно документа, нужно учитывать исходное расположение файлов.

Представим ситуацию, когда страница products.html, будет располагаться не в корневой директории сайта(как это было в предыдущем примере), а в подкаталоге. Теперь необходимо вставить изображение, в файл products.html, который находится, глубже чем корневая директория сайта.

Для того, что бы вставить изображение в файл products.html нужно вернуться в корневую директорию. После чего, можно использовать уже известный путь, о котором говорилось чуть выше.

Как видно из приведённого выше кода, к пути теперь добавилось следующее: ../. Как раз эта последовательность символов ../ и служит для перехода на одну директорию(уровень) выше в иерархии каталогов. Путь в вышеприведённом коде можно прочесть так: «Перейти на один каталог выше(назад), зайти в директорию images и взять от туда файл products.png«.
Если ../ означает переход на одну директорию(уровень) выше в иерархии каталогов, то символ / обозначает переход на один уровень ниже.
Последовательность символов ../ можно использовать в пути неоднократно. Например, если файл products.html переместить в три директории вложенные в друг друга, то нужно будет использовать следующий код:

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

Путь относительно корня сайта

Вы наверное уже поняли что пути относительно документа используются очень часто. Но при их использовании существует одна проблема. Которая заключается в том, что при смене структуры директорий, пути придется менять.
Но такая проблема решаема при использовании путей относительно корня сайта. Где путь указывается от корневой директории до документа.
Все пути относительно корня сайта начинаются со знака /. Только здесь, в отличии от путей относительно документа этот знак используется для указания корневой директории. Потому, что он используется в начале пути.
Путь относительно корня сайта позволяет перемещать некоторые файлы, без ущерба для ссылок. Этот тип пути Вы сможете использовать только на web-сервере в интернете, или на web-сервере расположенном на локальной машине.

В качестве web-сервера на локальной машине может выступать — XAMPP. Который позволит у себя на компьютере создать среду для созданию сайтов и их предварительного тестирования.

Корневой относительный путь не содержит ни протокола http, ни доменного имени. И как я уже говорил начинается с указания символа /, который указывает на корневую директорию. В этой директории обычно располагается индексный файл главной страницы.

Например, /images/products.png обозначает, что файл products.png находится в папке images, которая расположена в корневом каталоге.

Самый простой способ определить корневой относительный путь — взять абсолютный и отбросить http:// и имя хоста.

Пример
Иногда бывает нужно, что бы информацию одной страницы использовали другие страницы сайта. Часто это делается для того что бы сократить количество повторяемого кода на каждой странице. Допустим есть файл _contact.html, который содержит информацию о телефонных номерах, e-mail и содержит изображение contact.png. (Пускай это будет небольшая таблица, которая будет располагаться на каждой странице сайта.)

Следующий код предназначен для вставки изображения «contact.png».

Код, который необходим для вставки одного файла в другой, выходит за рамки этой статьи. Здесь все зависит от используемого языка программирования.

Я надеюсь, что Вы уже знаете какой тип пути использовался в вышеприведённом коде. Если нет, тогда посмотрите приведённое выше определение пути относительно документа.
Теперь, когда посетитель зайдет на такие страницы сайта как home.html, contact.ntml, он увидит прекрасно отображаемую страницу. В каждую из которых вставлен файл _contact.html, в который, в свою очередь, вставлено изображение contact.png.
Другими словами зайдя, к примеру, на страницу home.html, происходит следующее: «Выполняется код основной страницы home.html. Затем вставляется и исполняется код страницы _contact.html. Код страницы _contact.html, говорит что нужно перейти в директорию images и взять от туда изображение contact.png«.
Если опустить сам код для вставки, то все работает отлично. Но вот если запустить страницу products.html, то произойдет ошибка. Так как код будет пытаться найти директорию images и файл contact.png в директории products. Но такой директории там не существует, из за чего собственно и возникает проблема.
Становится ясным, что использовать путь относительно документа здесь нельзя.
Конечно здесь можно использовать абсолютный путь. О плюсах и минусах данного подхода я говорил выше.
В общем говоря, это одна из ситуаций, когда нужно использовать путь относительно корня сайта. При использовании пути относительно корня сайта, ссылка будет всегда начинаться с корневого каталога(корня сайта). Такой тип пути позволит использовать код для вставки, например изображения, независимо от иерархии сайта, и его директорий.
Использование пути относительно корня сайта в вышеприведённом примере, позволит избежать проблем, со вставкой изображения. Потому как независимо от того где будет использовать такой тип пути, он всегда найдет указанный в нем файл.
Путь относительно корня сайта, очень похож на путь относительно документа. Для того что бы создать путь относительно корня сайта, нужно добавить символ / в начало пути.

Теперь изображение будет корректно вставляться на любой из страниц сайта.

Надеюсь я немного помог Вам разобраться в том какие пути существуют, и в том когда и где они используются. Теперь можно использовать все типы пути по прямому их назначению.

Абсолютные и относительные ссылки в HTML

Здравствуйте, уважаемые читатели блога Goldbusinessnet.com. В продолжение статьи о создании гиперссылок рассмотрим, что они из себя представляют в абсолютном и относительном варианте.

В принципе, в той публикации досконально разобран механизм, позволяющий формировать линки (от английского слова «link», одно из значений которого интерпретируется как «ссылка») на базе URL-адреса в самом различном исполнении с помощью средств HTML с целью их размещения в веб-пространстве (включая и страницы сайтов) в качестве составляющей части контента.

Так как гиперссылка, которая неразрывно связана с гипертекстом (здесь определение hypertext), является частным случаем ссылки, то в ракурсе рассматриваемой нами темы эти термины можно считать тождественными. Поэтому в ходе повествования я буду применять оба этих понятия.

При использовании абсолютных и относительных линков, естественно, существуют свои нюансы, которые я сегодня постараюсь до вас донести в понятной и доступной форме.

Абсолютный и относительный путь в ссылках

Давайте, пойдем сначала. Основным отличительным признаком любой ссылки является наличие URL адреса, который чаще всего содержит абсолютный путь (полный) до страницы или файла:

В таком виде мы вводим урлы в поисковую строку браузера для получения доступа с объекту. При этом любой URL обязательно начинается с наименования протокола передачи данных и включает имя домена («http://site.ru/»). Именно в подобном виде путь до объекта (вебстраницы или файла) используется в качестве параметра атрибута href при создании абсолютной ссылки с помощью средств HTML для ее последующей вставки в контент заданной странички (документ):

Абсолютные гиперссылки можно теоретически использовать везде, но на практике их применяют чаще тогда, когда нужно сослаться на внешний веб-ресурс, а относительные более эффективны при переходах в пределах одного сайта, поскольку они короче и не загромождают HTML код.

Варианты относительных ссылок

Ежели представленный выше пример полного пути в URL-адресе немного модифицировать, убрав «http:», то как раз получится образец относительного пути:

Если же привлечь средства ХТМЛ, то можно создать ссылку относительно протокола:

Такой вариант вполне работает не только в пределах домена, но и на сторонних веб-страницах, причем, независимо от того, какой протокол (HTTP или HTTPS) установлен для конкретного сайта. Поэтому на практике данный вид относительных ссылкок с успехом можно применить, к примеру, в случае перевода веб-проекта на безопасный протокол HTTPS.

Пойдем далее и вдобавок к названию протокола уберем еще и двойной слеш вместе с доменным именем. Получится другая вариация относительного пути:

На его основе таким же образом создается относительная гиперссылка:

Возьмем для наглядности пример с файликом (file1.html). Такой линк будет работать только лишь в том случае, если файл расположен в папке (каталоге), которая, в свою очередь, находится в составе корневой директории вебсайта. То есть, в данном случае путь до файла (в составе URL, который служит параметром атрибута href) будет указан относительно корня веб-ресурса:

В соответствии с предоставленным выше скриншотом вы, полагаю, уже поняли следующее. Ежели файлик (в нашем примере file2.html) входит напрямую в состав корневой директории, то путь к нему относительно корня (site.ru) примет такой вид:

Тут самый первый слеш «/» заменяет корневую папку «site.ru/». То есть, при создании перехода на главную страницу сайта с любой его страницы можно использовать короткую конструкцию:

Тот же самый принцип работает и при проставлении линков с одной веб-страницы проекта на другую. Образцом может служить тот же блог WordPress, где есть главная страница, статические и привязанные к определенным рубрикам (категориям) вебстраницы записей.

Скажем, с абсолютно любой странички проекта можно проставить относительную ссылку на иную страницу с указанием рубрики. Возьмем для примера этот блог:

А, скажем, относительная ссылка на статическую вебстраницу (которая не принадлежит ни одной рубрике, но входит в состав корневой папки «Goldbusinessnet.com») с любой другой странички в пределах одного проекта может выглядеть так:

Итак, мы выяснили, что гиперлинки именно относительно корневой папки обычно и используются на практике, когда необходимо сослаться с одной страницы сайта на другую.

Теперь давайте рассмотрим еще несколько случаев создания линков относительно текущего веб-документа (файла или web-страницы), а не корня сайта. Здесь один из файлов будет донором (с которого проставлена ссылка), а другой акцептором (на который ведет гиперссылка).

1. Файлы расположены в одной папке:

В этом случае относительная ссылка будет содержать только лишь название документа, который является акцептором (обратите внимание, что знак слеша тут опущен, так как путь указывается не относительно корня, а вполне конкретной папки):

2. Файлы находятся в разных директориях, причем документ, на который необходимо сослаться, располагается внутри каталога, находящегося в одной папке, содержащей донор:

Тогда в процессе создания относительной гиперссылки в содержании донора следует прописать дополнительно директорию, где находится акцептор:

Если целевой файл, на который указывает ссылка, находится еще на уровень ниже относительно донорского документа в иерархической структуре (к примеру, располагается в catalog3, который вложен в catalog2), то путь будет таким:

Ну и так далее, в зависимости от количества вложенных друг в друга директорий.

3. Теперь разберем обратную ситуацию, когда документ-акцептор располагается на уровень (или несколько) выше донорского файла:

При таком раскладе перед наименованием файлика необходимо поставить слэш «/» и двоеточие, означающее, что акцептор расположен на один уровень выше:

Если документ, на который ссылаются, находится на целых два уровня выше (скажем, донорский документ пребывает в папке catalog3, которая вложена в catalog2), то HTML код относительной гиперссылки примет следующий вид:

Как вы, наверное, поняли, подобных уровней может быть сколько угодно много, все зависит от файловой структуры вашего веб-проекта. Чем больше уровней между акцептором и донором, тем большее количество двоеточий и слэшей необходимо указать.

4. Есть еще вариант, когда акцептор и донор расположены в разных папках одного уровня:

Для того, чтобы сформировать относительный гиперлинк, нужно перейти на один уровень выше (catalog), а в пути указать директорию документа, на который будем ссылаться:

5. Ну и теперь самый сложный случай. Это когда документ, содержащий относительную ссылочку, и файл, на который она ведет, располагаются в разных папках, причем директория с донором находится на один или несколько уровней выше папки с акцептором:

Если разница 1 уровень, то относительной ссылкой является такая:

Я привел только основные примеры относительных ссылок, на самом деле их гораздо больше. Но главное — понять суть алгоритма их создания, что, надеюсь, вам удалось. Тем более, что все другие вариации будут просто производными от выше указанных.

Особенности относительных и абсолютных гиперссылок

Ежели в качестве целевого объекта абсолютной или относительной ссылки указать не файл, а всю директорию, то в конце URL желательно прописывать слеш:

Тем самым вы указываете серверу, что необходимо открыть для просмотра весь каталог, а не конкретный файл. Если же опустить значок «/» и оформить гиперссылку вот так:

То серверный обработчик сначала начнет поиски файла «uploads», именно в таком виде (без расширения), а уже затем отыщет папку с таким именем. Посему, проставив сразу же слеш, вы сэкономите ресурсы сервера, на котором располагается сайт.

Также необходимо иметь ввиду, что в целях безопасности содержимое любого рабочего каталога сайта должно быть скрыто. Поэтому веб-сервер обычно сконфигурирован таким образом, чтобы воспрепятствовать отображению его файлов. Например, вместо этого может быть показан пустой индексный файл index.php либо index.html (в браузере это будет просто белая страница).

Я настоятельно рекомендую проверить, так ли обстоит дело на вашем сайте. Например, если у вас вебпроект под управлением Вордпресс, то изучите соответствующий материал, повествующий о базовых настройках защиты при использовании в том числе этого метода (правда, в современных версиях WP данная ситуация уже под контролем, но проверка не помешает).

В общем-то, принцип создания абсолютных и относительных ссылок действует и в отношении стандартных вебстраниц сайта. Но, поскольку львиная доля вебмастеров (особенно это касается владельцев полномасштабных веб-ресусов, а не простеньких дневников и одностраничников) использует для управления веб-ресурсом CMS, то здесь есть некоторые нюансы.

Что касается главной страницы, то абсолютная ссылка на нее включает доменное имя, которое является названием корневой папки в соответствии с файловой структурой сайта на сервере:

Образец относительного линка в отношении главной я уже приводил, но повторю еще раз:

Если вы желаете подробнее изучить нюансы применения адресов в относительных и абсолютных ссылках именно для всех страниц своего сайта, то почитайте соответствующий раздел статьи об урлах, где сможете, например, узнать, почему любой URL (со слешем или без в конце) является корректным в плане синтаксиса и полностью отвечает установленным стандартам.

Относительный адрес

относительный адрес — смещение Задается относительно некоторой базы. [Е.С.Алексеев, А.А.Мячев. Англо русский толковый словарь по системотехнике ЭВМ. Москва 1993] Тематики информационные технологии в целом Синонимы смещение EN relative address … Справочник технического переводчика

относительный адрес — santykinis adresas statusas T sritis automatika atitikmenys: angl. differential address; relative address vok. relative Adresse, f rus. относительный адрес, m pranc. adresse différentielle, f; adresse relative, f … Automatikos terminų žodynas

Адрес (информатика) — У этого термина существуют и другие значения, см. Адрес. Адрес символ или группа символов, которые идентифицируют регистр, отдельные части памяти или некоторые другие источники данных либо место назначения информации.[1][2] Содержание … Википедия

Адресация памяти — Адресация осуществление ссылки (обращение) к устройству или элементу данных по его адресу[1]; установление соответствия между множеством однотипных объектов и множеством их адресов; метод идентификации местоположения объекта[2]. Содержание … Википедия

Хеширование — метод преобразовании ключа записи в абсолютный или относительный адрес расположения записи в памяти. При хешировании используется функция преобразования ключа (функция хеширования). По английски: Hashing См. также: Информационно поисковые… … Финансовый словарь

adresse différentielle — santykinis adresas statusas T sritis automatika atitikmenys: angl. differential address; relative address vok. relative Adresse, f rus. относительный адрес, m pranc. adresse différentielle, f; adresse relative, f … Automatikos terminų žodynas

adresse relative — santykinis adresas statusas T sritis automatika atitikmenys: angl. differential address; relative address vok. relative Adresse, f rus. относительный адрес, m pranc. adresse différentielle, f; adresse relative, f … Automatikos terminų žodynas

differential address — santykinis adresas statusas T sritis automatika atitikmenys: angl. differential address; relative address vok. relative Adresse, f rus. относительный адрес, m pranc. adresse différentielle, f; adresse relative, f … Automatikos terminų žodynas

relative Adresse — santykinis adresas statusas T sritis automatika atitikmenys: angl. differential address; relative address vok. relative Adresse, f rus. относительный адрес, m pranc. adresse différentielle, f; adresse relative, f … Automatikos terminų žodynas

relative address — santykinis adresas statusas T sritis automatika atitikmenys: angl. differential address; relative address vok. relative Adresse, f rus. относительный адрес, m pranc. adresse différentielle, f; adresse relative, f … Automatikos terminų žodynas

Илон Маск рекомендует:  Что такое код hebrevc
Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL