Должны ли SEO-специалисты заботиться о внутренних ссылках?
Давайте поговорим об анализе внутренних ссылок и внутренней перелинковке. Это то, что вы должны сделать правильно, так как ошибки могут вызвать множество проблем.
- Атрибуты внутренних ссылок
- Внутренние и внешние ссылки
- Идеальная внутренняя перелинковка
Я имею в виду ссылку, которая существует на сайте ABC.com, и ведет на другую страницу ABC.com. К примеру, пусть это будут /A и /B. Пусть это будет страница «маршруты доставки». Таким образом, вы можете видеть, что я добавляю ссылку с A на B с анкорным текстом «маршруты доставки».
Изначально идея была такова — внутренние ссылки должны были побуждать посетителей переходить из одного места в другое.
Показывать, где можно перейти с одной страницы сайта на другую. Внутренние ссылки отличаются от внешних только тем, что в HTML-коде вы указываете тот же основной домен.
На заре интернета это не имело значения. Но для SEO это важно, потому что внешние ссылки обрабатываются не так, как внутренние. Это не означает, что внутренние ссылки не имеют значения или не могут влиять на ранжирование, изменять схемы сканирования сайта и способ внутреннего поиска по ресурсу. Это именно то, о чем мы будем говорить в статье.
1. Анкорный текст — это то, о чем пойдет речь в первую очередь. Поисковые системы сводят к минимуму его важность при анализе внутренних ссылок сайта. Но это, безусловно, то, что относится к внутренним ссылкам.
2. Расположение на странице имеет большое значение, как и для внешних ссылок. Для внутренних ссылок важны значения определенных атрибутов, связанных с ними, которые могут вызывать проблемы.
Это касается тех случаев, когда Google, например, видит манипуляции во внутренней структуре ссылок. В частности, то, как вы задали одинаковый анкорный текст для всех внутренних ссылок, пытаясь улучшить ранжирование страницы по запросу «маршруты доставки».
А также разместили небольшую ссылку в футере каждой страницы. Google идентифицирует попытку манипулирования, а он ненавидит это. Существует алгоритмическое наказание за такие вещи.
Правда, Google быстро отменяет такой штраф, что приятно. Поэтому, если у вас наблюдаются проблемы с ранжированием, и вы понимаете «О нет, я наделал кучу таких ссылок», просто уберите их. Ранжирование может быстро прийти в норму.
3. target для страницы, очевидно, имеет значение.
4. Страница, на которую мы ссылаемся. Бывает так, что если на страницу сайта ведет много внешних ссылок, она получает больший вес и выше ранжируется.
Для внутренних страниц это не так выражено, но все же внутренние ссылки передают вес и способствуют улучшению ранжирования. Поэтому, если на сайте есть страницы с большим количеством внешних ссылок, разместите в них ссылки на другие страницы своего сайта, которые нуждаются в этом и полезны для пользователей. Это еще один сигнал, о котором мы поговорим.
5. Релевантность ссылки. Когда я помещаю на страницу «маршруты доставки» ссылки с других страниц, посвященных доставке, это хорошо. А вот размещать ссылку со страницы, посвященной кормам для собак, не стоит. Если речь не идет конкретно о маршрутах доставки собачьих кормов, тогда здесь не хватает какого-то контекста, и поисковые системы тоже могут это увидеть.
6. Первая ссылка на странице. Это касается анкорного текста, как и в случае внешних ссылок. Если вы размещаете кучу ссылок с одной страницы на другую конкретную страницу, Google учитывает только первый анкор. Поэтому, если у меня есть шесть разных ссылок на одну страницу, и первая ссылка гласит: «Нажмите здесь» — «Нажмите здесь» и будет анкорным текстом, который применит Google. Не «Нажмите здесь», «маршруты доставки» и «доставка». Последующие при анализе внешних и внутренних ссылок не будут иметь значения.
7. Когда тип ссылки имеет значение. Я бы рекомендовал сохранить формат HTML-ссылки, а не пытаться сделать что-то свое с помощью JavaScript. Несмотря на то, что Google может следовать по ним, он не будет передавать по ссылочный вес в полной мере.
Текст — это немного лучше, чем изображения, как показали наши тесты. Хотя эти тесты и проводились уже несколько лет назад.
Поэтому вполне возможно, что на данный момент ссылки с изображения обрабатываются точно так же. В любом случае, убедитесь, что у вас это есть. Кстати, если вы делаете ссылки с изображения, помните, что атрибут alt — это то, что становится анкорным текстом ссылки.
A. Внешние ссылки передают больше веса и сильнее влияют на ранжирование.
Внешняя ссылка похожа на сигнал от независимого сайта вашему. На вашем собственном сайте это похоже на голосование за себя самого, поэтому поисковые системы не воспринимают это позитивно.
B. Анкорный текст внутренних ссылок имеет меньшее значение.
Я помещаю на свою страницу ссылку с анкорной фразой, по которой хочу ранжироваться. Но не нужно это делать так, чтобы это выглядело откровенным спамом, или не учитывало интересы посетителей. Если они перестанут кликать ссылки на сайте или взаимодействовать с ним, то я потеряю SEO-вес и авторитет быстрее, чем, если бы я просто сделал эти ссылки полезными для посетителей. Кроме этого, анкорный текст внутренних ссылок не так важен.
C. Отсутствие внутренних ссылок может затруднить индексацию и ранжирование веб-страниц.
В основном такие проблемы связаны с отсутствием внутренних ссылок. Например, в случае страниц, на которые размещено немного ссылок с остальных страниц сайта. Это может затруднить индексирование, ранжирование и анализ внутренних ссылок.
D. Страницы, на которых размещено больше ссылок, передают меньший ссылочный вес через каждую ссылку.
Вы помните оригинальную формулу PageRank от Google? Суть ее в следующем: «Если на странице есть пять ссылок, каждая из них передает одну пятую веса PageRank, а если четыре — одну четвертую». Очевидно, что четверть больше одной пятой. Удаление этой пятой ссылки может означать, что каждая из четырех страниц, ссылки, на которые вы размещаете, получает немного больше веса. Поэтому она будет иметь более высокий рейтинг согласно исходному алгоритму PageRank.
Конечно, PageRank на данный момент уже стар. Но концепции, на которых он разрабатывался, еще не упразднены. Страница с огромным количеством ссылок будет передавать меньше веса и меньше влиять на ранжирование, чем страница с несколькими ссылками. Поэтому на сайте стоит время от времени удалять ссылочный и прочий мусор. Если вы будете принимать это во внимание, то получите хорошие результаты.
Мы наблюдали такое на нескольких сайтах: когда они сократили количество ссылок, оставили только ведущие только на те страницы, которые имеют наибольшее значение, они увидели улучшение ранжирования. А кроме этого улучшились и другие сигналы: поведенческие, ссылочные и контекстные, что помогало поисковым системам их лучше оценивать.
E. Внутренний поток ссылок (также известный как перераспределение PR) редко эффективен и дает незначительные результаты… Но немного правильных внутренних ссылок, и вы удивитесь, что с их помощью можно получить.
Перераспределение PageRank было распространено с 2002 по 2009 год, когда приводились примеры того, как это сделать. Предпринимались попытки создать программное обеспечение, которое будет сканировать сайт и показывать идеальную систему перераспределения PageRank, и то, на какие страницы размещать ссылки, а на какие нет.
Когда PageRank был доминирующим алгоритмом Google, это было так. Перераспределение PageRank могло иметь реальный эффект. В наши дни его значение существенно уменьшилось. Это не стало совсем неважным из-за некоторых других принципов, о которых мы говорили. Просто наличие большого количества ссылок на странице может иметь пагубные последствия. И наоборот, небольшое количество тщательно отобранных ссылок может дать хорошие результаты. Но обычно внутренние ссылки, оптимизация внутренней перелинковки с целью усилить определенные позиции не дает заметного результата, и не имеет большого значения при анализе внутренних ссылок сайта.
Но правильная внутренняя перелинковка может дать хорошие результаты. Например, если у вас есть страницы, которые не могут найти поисковики через структуру ссылок, это плохо. Устранение этих недочетов окажет положительное влияние.
Структура внутренних ссылок должна выглядеть примерно так. Главная страница, на которой может быть 100 ссылок на внутренние страницы. На уровень ниже может быть 100 разных страниц: подкатегорий или страниц категорий, мест, через которые люди переходят глубже на ваш сайт. Затем с каждой такой страницы может указывать не более 100 уникальных ссылок, ведущих на второй уровень вложенности от главной страницы. В общей сложности — это около 10 000 страниц.
I. Ни одна страница не должна находиться далее, чем в трех переходах по ссылкам от другой (для большинства небольших и средних сайтов).
В одном, двух, трех переходах или ссылках от главной страницы и любой страницы на сайте можно получить до миллиона страниц. Оптимальная внутренняя структура ссылок должна обеспечивать, чтобы можно было попасть с любой страницы на любую за три и меньше переходов. Если это число больше, у вас может быть внутренняя структура ссылок, которая создает длинные пути, заставляя пользователя долго кликать, прежде чем он сможет куда-то попасть. В таком случае разумно создавать категории и подкатегории.
Приведу простой пример — обычный блог. Чтобы дойти до любого поста, опубликованного два года назад, мне нужно нажать «Далее», «Далее», «Далее», «Далее», «Далее», «Далее»… Пройти через всю эту разбивку, пока я, наконец, не доберусь до нужной публикации.
Если при анализе внешних и внутренних ссылок хорошо поработать с категориями и подкатегориями, я могу нажать на категорию этого поста и быстро найти его в списке последних 50 постов по этой тематике.
II. Страницы должны содержать ссылки, которые посетители посчитают релевантными и полезными.
Если никто не кликает ссылку, это плохой сигнал для сайта и Google. Я имею в виду случай, когда немногие люди переходят по этой ссылке, и большинство из них сразу нажимают «Назад». Это тоже плохой знак.
III. Для двух ссылок не должен использоваться один и тот же анкорный текст для указания на разные страницы. Канонизируйте!
Например, если бы здесь была ссылка с анкором «маршруты доставки», указывающая на соответствующую страницу, а также другая ссылка с тем же анкорным текстом, указывающая на отдельную страницу. Для чего создавать конкуренцию между двумя собственными страницами? Я должен канонизировать эти ссылки и страницы. Если страницы ориентированы на одни и те же намерения и ключевые слова, соберите их вместе.
IV. Ограничьте использование rel = «nofollow» для генерируемого пользователями контента или определенных ненадежных внешних ссылок. Это не поможет улучшить внутренний поток ссылок в плане SEO.
Rel = «nofollow» был классическим способом, с помощью которого люди выполняли перераспределение PageRank. Я бы настоятельно рекомендовал не использовать его для этой цели.
В Google внедрили некоторые превентивные меры, так что ссылки, обернутые в rel=»nofollow», все равно приводят к утечке PageRank. Я не настаиваю на этом, но сам я не использовал бы rel=»nofollow».
Вместо этого я бы внимательнее следил за ссылками и страницами, которые создаю. Это лучший способ оптимизировать внутренний поток ссылок.
V. Удаление контента с низким уровнем взаимодействия и создание внутренних ссылок, которые нужны пользователям.
Это обеспечит наилучшие результаты, полученные от анализа внутренних ссылок.
VI. Убедитесь, что на все значимые страницы ведут ссылки (и с них тоже). На сайте не должно быть страниц, на которые не указывает ни одна ссылка. А также страниц, на которые ведет много ссылок, но которые, в свою очередь, не ссылаются на разделы сайта, представляющие интерес или ценность для посетителей и для Google.
Следуя приведенным в статье советам по анализу внутренних ссылок сайта, вы сможете провести качественный анализ ссылок, оптимизировать внутреннюю перелинковку, улучшить показатели SEO и увеличить ценность своего сайта в глазах посетителей.
Вадим Дворниковавтор-переводчик статьи «Should SEOs Care About Internal Links — Whiteboard Friday»
Уроки по HTML/Тест №3.
1. Что такое гипертекст?
гипертрофированный текст
текст с перекрестными ссылками
текст имеющий много значений
текст из гиперпространства
2. Укажите составные части всякой ссылки?
указатель ссылки и анкер
URL-адрес и адрес документа
URL-адрес и указатель ссылки
указатель ссылки и содержание
3. Для организации ссылки c документа index.htm на документ book.htm, расположенных в одном каталоге, необходимо написать строку:
<a href=book.htm>дальше</a>
<a href=#index.htm>дальше</a>
<a href=»book.htm#»>дальше</a>
<a href=index.htm>дальше<a>
4. Какой вид имеет обычная гиперссылка (без наложенных на нее стилей)?
Обычный фрагмент текста, просто синего цвета
Сылка маркируется каким либо цветом
Подчеркнутое слово красного цвета
Подчеркнутое слово, как правило синего цвета
5. Что произойдет, если файл на который вы ссылаетесь отсутствует?
Ничего не произойдет
Произойдет переход на другой предложенный файл
Браузер выдаст сообщение о невозможности отобразить загружаемую страницу
Результат непредсказуем
6. Как правильно сослаться из файла index.htm, расположенного в корне, на файл risunki.htm, расположенный в папке image, которая вложена в папку shedevr?
<a href=shedevr/risunki/image.htm>мои рисунки</a>
<a href=shedevr/image/risunki.htm>мои рисунки</a>
<a href=image/shedevr/risunki.htm>мои рисунки</a>
<a href=index/image/risunki.htm>мои рисунки</a>
7. В каких случаях целесообразно применять внутренние ссылки?
при наличии большого документа
при использовании текстовых вставок
при наличии на страницы других ссылок
при использовании логических структур
8. Для того, чтобы из раздела «Печать» сделать внутреннюю ссылку на раздел «Издания»(анкер-izdan) надо:
В разделе «Печать» вставить <a href=»izdan.htm»>Издания</a>, а перед разделом «Издания» анкер <a name=»izdan.htm»></a>
В разделе «Печать» вставить <a href=#izdan>Издания</a>, а перед разделом «Издания» анкер <a name=izdan></a>
В разделе «Печать» вставить <a href=»izdan. htm#izdan»>Издания</a>, а перед разделом «Издания» анкер <a name=»izdan»></a>
В разделе «Печать» вставить <a href=»izdan»>Издания</a>, а перед разделом «Издания» анкер <a name=»izdan»></a>
9. Поясните смысл следуюшего фрагмента: <a href=resolut.htm#FIN»>Заключение</a>
это ссылка ссылка c одного файла на файл resolut.htm
это ссылка c одного файла на конкретное место файла resolut.htm, отмеченное анкером FIN
это ссылка в файле resolut.htm на раздел «Заключение»
10. Как сделать ссылку на почтовый ящик [email protected]
<a [email protected]>Почта</a>.
<a href=mailto:lud@mail>Почта</a>.
<a [email protected]#mailto>Почта</a>.
<a href=mailto:[email protected]>Почта</a>.
Внутренние ссылки в HTML [тег]
Брюс Ли однажды сказал: « Пока вы не освоите якорные ссылки в HTML и CSS, вы не освоите разработку внешнего интерфейса. »
Хорошо, я шучу, Брюс Ли не не говори так. Но это все же правда. Якорные ссылки (анкоры URL) часто являются первыми мыслями, которые начинающие разработчики учатся использовать, но есть нечто большее, чем просто гиперссылки с одной страницы на другую. Итак, начнем наш путь к мастерству…
Когда мы говорим об анкорной ссылке, мы имеем в виду
Элемент HTML. Как вы знаете, вы в основном используете его для гиперссылок на другие веб-страницы, но вы также можете использовать его для ссылок на адреса электронной почты, номера телефонов или даже файлы на локальном жестком диске.
Так почему же он называется «анкор», а не «ссылка», как его назвал бы нормальный человек?
Ну, это потому, что изначально он был изобретен как способ перехода между различными частями одного и того же документа (внутренняя ссылка в HTML). Вы должны использовать тег
не только для создания ссылки, но и для идентификации часть страницы, на которую вы ссылаетесь 9от 0003 до . Точно так же, как настоящий якорь останавливает движение корабля, тег якоря останавливает движение окна просмотра.
В настоящее время вам не нужно использовать тег a
в качестве «точки остановки» — вы можете, если хотите, но вы также можете ссылаться на любой элемент с атрибутом id
(подробнее об этом позже).
Как добавить привязку URL в HTML
Ключевой атрибут элемента привязки — href
. Вы используете это, чтобы указать, куда вы хотите, чтобы ссылка вела:
AlvaroTrigo.com
Текст между открывающим
и закрывающим
тегами — это текст, который люди на самом деле щелчок — известный как анкорный текст.
Ниже приведены несколько анкорных ссылок (анкор URL) Примеры HTML:
См. перо на КодПене.
Как сделать ссылку на определенную часть HTML-страницы?
В приведенных выше примерах создается привязка URL к другой веб-странице. Однако, как я упоминал ранее, вы также можете использовать привязки URL для внутренних ссылок на HTML-страницах.
Для этого вы просто добавляете атрибут id
к элементу, на который хотите сослаться (обычно это заголовок, но может быть что угодно), и используете его в атрибуте href
привязки:
Я ссылаюсь отсюда
Я ссылаюсь сюда
Обратите внимание, что вам нужно поставить #
в якоря href
, но не в целевом id
.
Ниже приведен пример внутренней ссылки, чтобы вы могли увидеть, как это выглядит в действии:
Якорная ссылка на начало страницы
Хорошо, это работает как задумано. Но что, если наш посетитель захочет вернуться наверх? Должны ли мы просто позволить им прокрутить весь путь назад? Мы могли бы… но давайте облегчим им задачу и добавим еще одну якорную ссылку, которая приведет их наверх страницы.
Для этого мы используем тот же процесс, что и раньше. Нам просто нужно найти самый высокий элемент на нашей странице, текстовую область
div
в данном случае, и добавить id
к нему:
Затем мы просто связываемся с ним как обычно:
Вернуться к началуМы получаем это:
См. перо на КодПене.На данный момент ссылка просто телепортирует людей на новое место. Было бы круто, если бы вместо этого страница постепенно прокручивалась вниз к месту назначения.
Это не только возможно, но и довольно легко достигается с помощью jQuery:
См. перо на КодПене.
Подробные инструкции о том, как это сделать, можно найти здесь: плавная прокрутка jQuery.
Но есть одно но. Заметили, что когда мы прокручиваем нижнюю часть страницы, у нас не остается промежутка между пунктом назначения и верхней частью области просмотра? Он полностью вровень.
Это выглядит не очень красиво, поэтому мы должны добавить небольшое смещение над пунктом назначения, чтобы дать ему передышку. Чтобы сделать это, мы можем просто использовать этот хороший трюк от Криса Койера:
#lorem-ipsum::before {
дисплей: блок;
содержание: " ";
верхнее поле: -20px;
высота: 20 пикселей;
видимость: скрытая;
событий-указателей: нет;
}
::before
— это псевдоэлемент, он будет первым дочерним элементом того, к чему вы его прикрепите, в данном случае наш целевой заголовок с идентификаторомid
из#lorem-ipsum
.Присвоив псевдо-элементу высоту
обеспокоен тем, что высота все еще существует! Таким образом, целью ссылки на самом деле являетсяи сделав его элементом
блока
, мы гарантируем, что все родственные элементы появятся на новой строке под ним. Установив отрицательное значение верхнего поля, мы сдвинем его вверх на ту же величину, что аннулирует высоту, поэтому наше отображение не будет затронуто. Однако… до
20px
над элементом.Говорил же тебе, что это уловка!
См. перо на КодПене.
ОК — вы можете сделать так, чтобы ваши ссылки что-то делали. Теперь давайте подумаем о визуальном аспекте. Как можно изменить внешний вид якорных ссылок?
Просто выберите элемент
a
в вашем CSS и добавьте любой стиль, который вы хотите. Например, цвет якорной ссылки по умолчанию — синий или 9.0011 #0000ee Если вы хотите изменить это, вы просто используете:a {
color: #ee7700;
}Это даст вам оранжевые ссылки.
Вот несколько других распространенных способов настройки якорных ссылок с помощью CSS…
Подчеркивание привязки URL CSS
Многие сайты избавляются от подчеркивания в своих якорных ссылках. Я вижу здесь логику — я думаю, что каждый пользователь Интернета знает, что текст другого цвета обычно является ссылкой, и многие люди думают, что ссылки выглядят лучше без подчеркивания.
В CSS вы подчеркиваете (или нет) с помощью свойства
text-decoration
, поэтому мы можем просто выбрать элементa
и установить для него значениеnone
:a {
text-decoration: none;
}Давайте попробуем и посмотрим, как это выглядит:
См. перо на КодПене.
Что вы думаете? Лучше или хуже? Я оставлю вас, чтобы сделать это по вашим собственным проектам. Лично я думаю, что без него текст выглядит чище. .. но я также думаю, что подчеркивание полезно. Убирает всякую путаницу — «это ссылка, 100% точно, никаких вопросов». Интересно, есть ли здесь золотая середина…
Если мы хотим, мы можем нацелить CSS нашей ссылки привязки так, чтобы она вступала в силу только когда посетитель наводит курсор на ссылку. Это легко, просто используйте
a:hover
в CSS.Итак, если вы хотите удалить подчеркивание из ссылки, но чтобы оно снова появлялось, когда люди наводят на него курсор, вы должны использовать это:
a {
text-decoration: none;
}a:hover {
text-decoration: underline;
}Результат:
См. перо на КодПене.
ОК Мне нравится! шаг за шагом наша страница собирается вместе.
Привязка URL Посещенный Цвет
Ранее мы говорили об изменении цвета ссылки.
Но, как вы знаете, ссылки меняют цвет на другой, если вы посещали это место раньше. Вы видели это в нашем примере выше — когда вы вернетесь наверх, исходная ссылка станет фиолетовой —
#551A8B
, если быть точным. Это цвет по умолчанию для посещенных ссылок.Если вы хотите изменить это, просто используйте
a:посещено
:a:посещено {
цвет: #7B0706;
}Это сделает его коричневым.
См. перо на КодПене.
Ваш анкорный текст не обязательно должен быть текстовым. Это может быть любой элемент!
Изображение довольно часто используется в качестве ссылки, например, для перехода к полноразмерной версии изображения. Так как же связать изображение? Просто поместите элемент
внутрь
:
jpg" alt ="Наверх" />Самое интересное здесь то, что если ссылка на изображение не работает, появится замещающий текст. Таким образом, запасной вариант — это обычная, полностью функционирующая текстовая ссылка. Вот пример:
См. перо на КодПене.
Чтобы сделать якорные ссылки еще более заметными для посетителей, вы можете добавить вокруг них небольшой отступ. И я полагаю, что вашей первой мыслью было бы сделать это:
a {
padding: 10px;
}Если вы сделаете это, вы обнаружите, что отступ появляется только слева и справа от ссылки привязки, например:
Это происходит потому, что
является встроенным элементом, а все встроенные элементы ведут себя таким образом. Если это то, что вы хотите, отлично! Готово!
Но если вы хотите, чтобы отступ отображался со всех четырех сторон якоря, вам просто нужно сделать его элементом
inline-block
:a {
display: inline-block;
отступ: 10px;
}Это относится ко всем строчным элементам, так что об этом полезно знать. Результат показан ниже — фактически он увеличивает
line-height
любой строки, на которой находится ссылка:См. перо на КодПене.
OK, +100 XP для вас — теперь вы знаете, как создавать и оформлять якорные ссылки!
Итак, вопрос в том, какой следующий шаг в вашем путешествии? Вот идея… почему бы не попробовать создать полностраничный сайт? Вы знаете тип, который я имею в виду — когда веб-страница разбита на полностраничные сегменты, и вы прокручиваете вниз, чтобы перемещаться между ними. Они обычно используются дизайнерскими студиями и известными брендами, и ваше портфолио будет выглядеть 9.0003 awesome (как эти), если у вас есть несколько таких.
Но разве их не сложно сделать? Ну, они могут быть, если вы решите сделать его с нуля. Но есть более простой способ — использовать JS-библиотеку под названием fullPage. js.
fullPage.js — это простое в использовании решение plug-and-play для создания полностраничных сайтов. Существует множество различных фонов, эффектов перехода и анимации, которые вы можете активировать очень легко. Еще одна интересная вещь заключается в том, что fullPage отлично интегрируется с WordPress — многие ваши потенциальные клиенты (или клиенты потенциального работодателя) будут использовать WordPress, поэтому наличие способа выделить вашу работу из пакета будет огромным плюсом. И fullPage именно такой!
Взгляните: fullPage.js
Об авторе:
Уоррен Дэвис — фронтенд-разработчик из Великобритании.
Больше информации от него можно найти на https://warrendavies.netсообщить об этом объявлении
Создание внутренних и внешних HTML-ссылок
Эта статья является частью серии статей для начинающих веб-разработчиков. Серия предназначена для людей, которые хотели бы начать серьезную веб-разработку, а также для людей, которые уже являются веб-разработчиками и хотят укрепить свои знания основ, возможно, заполнив некоторые пробелы. Если вы обнаружите, что возитесь с HTML, CSS или Javascript, пока не заработаете, эта серия статей для вас. Материалы этой серии тесно связаны с моим курсом Coursera с самым высоким рейтингом.
Ссылки в значительной степени делают Интернет тем, чем он является: одна вещь связана с другой.
В частности, в случае с HTML одна часть контента связана с другой частью контента.
Начнем с ссылки идентификатора фрагмента .
Традиционно ссылки идентификатора фрагмента — это те элементы на вашей странице, которые можно щелкнуть, и не требуется, чтобы браузер запрашивал что-либо новое с сервера. Эти ссылки позволяют пользователям переходить к определенным целевым разделов вашей веб-страницы.
Существует два шага для создания таких ссылок: пометить что-то как возможную цель ссылки и создать ссылку на эту цель.
Пометка содержимого как цели ссылки
Современный HTML-способ маркировки содержимого в качестве возможной цели ссылки заключается в назначении атрибута
id
элементу, обертывающему это содержимое.Как вы уже знаете, значение атрибута
id
любого элемента на одной HTML-странице должно быть уникальным. Поэтому присвоение 9Атрибут 0011 id для элемента с уникальным значением также создает уникальное целевое имя.Например,
создаст уникальное имя цели, при условии, что у вас нет другого элемента с идентификатором
... id
, равнымarea51
. Если у вас есть другой элемент на странице HTML с тем же значениемid
, сам HTML уже недействителен.Создание ссылки на идентификатор фрагмента
Когда у нас есть целевой элемент, мы можем создать ссылку, которая после нажатия будет указывать браузеру прокручивать/переходить страницу к этому элементу.
Делаем это с помощью тега
и его атрибута
href
. (href
означает гипертекстовую ссылку .)Значение атрибута
href
должно быть значением цели , которую мы указали на предыдущем шаге, с предшествующим символом#
.Например, чтобы указать
, наша ссылка будет выглядеть так:
... Обратите внимание, что браузер будет отображать слова
Ссылка на секретную область 51
в качестве содержимого, которое может щелкнуть пользователь.Как только пользователь щелкнет ссылку, браузер прокрутит/перепрыгнет страницу и попытается расположить содержимое , обернутое целевым элементом , вверху страницы.
Пример ссылки идентификатора фрагмента
Давайте рассмотрим полный пример ниже (
ссылки-та же-страница. html
):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 <голова> <мета-кодировка="utf-8">Ссылки <тело> <заголовок> Лорем ипсум ...Ссылки на разделы той же страницы
<раздел> <ул>#section1 #section2 #section3 #section4 #section5 <раздел>(#section1) Раздел 1
Лорем ипсум...
<раздел>(#section2) Раздел 2
Лорем ипсум...
<раздел>(#section3) Раздел 3
Лорем ипсум. ..
<раздел>(#section4) Раздел 4
Лорем ипсум...
<раздел>(#section5) Раздел 5
Лорем ипсум...
(Очевидно, я обрезал часть контента с помощью
...
, предполагая, что вам не нравится читать текст lorem ipsum . 😜)При нажатии на любую из ссылок в верхней части страницы страница переходит к нужному разделу, как показано ниже. Также обратите внимание, что браузер пытается расположить целевой раздел в верхней части окна. Однако, если контента недостаточно для заполнения оставшейся части окна ниже, целевой раздел не будет двигаться вверх дальше.
В самом низу нашей страницы у нас есть 2 ссылки: одна с
href="#top"
и другая сhref="#"
.Первый ничем не отличается от ссылок нашего раздела. Его целью является содержимое тега
, расположенное где-то ближе к верхней части документа.
Второй, с атрибутом
href="#"
, называется пустым фрагментом , поскольку после#
не указана цель. Нажав на ссылку с пустой фрагмент приведет к прокрутке/переходу браузера в самый верх страницы, как показано ниже.Давайте посмотрим на пример кода внешней ссылки ниже (
links-external.html
):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 <голова> <мета-кодировка="utf-8">Ссылки <тело>Внешние ссылки
<раздел>Давайте дадим ссылку на фан-страницу Facebook, которую я создал на этот курс! Страница курса в Facebook
В внешних ссылках нет ничего особенного, кроме их значения
href
, которое обычно начинается сhttp://
. Это связано с тем, что обычно внешние ссылки указывают на веб-страницу, размещенную на доменном имени, отличном от страницы, на которой размещена указывающая ссылка.(Внешние ссылки также могут указывать на другие веб-приложения, размещенные с использованием того же доменного имени . Хотя эти веб-приложения используют одно и то же доменное имя, они настроены под другим доменным именем.0003 контекст . Я объясню идею контекста веб-приложения в другой статье.)
Цель
Атрибут
Существует еще один атрибут элемента
a
, о котором важно знать и использовать вместе с внешними ссылками . Это атрибутtarget
.Когда значение атрибута
target
установлено на_blank
, это заставляет браузер открывать ссылку на другой вкладке браузера или в другом окне браузера.Посмотрим, как эта ссылка ведет себя в браузере:
Как видите, другая вкладка открывается, когда пользователь нажимает на ссылку.
Зачем использовать вкладку для внешних ссылок
Причина, по которой ваши внешние ссылки должны иметь
target="_blank"
, по крайней мере в большинстве случаев, заключается в следующем.К сожалению, в наше время у людей очень короткая продолжительность концентрации внимания.
Подожди, о чем я говорил?
Ах да. Ссылки. 🤣
Если вы не заставите браузер отображать содержимое внешнего вашего сайта в новой вкладке или окне, пользователь может щелкнуть ссылку и больше никогда не вернуться на ваш сайт.
Вы когда-нибудь садились за компьютер, чтобы проверить надвигающийся снег шторм, а затем просыпались через час, просматривая видеозапись на Amazon?
Да, я тоже. 🙄
Однако, если браузер вынужден открыть внешнюю страницу в новой вкладке, даже если пользователь забудет все о сайте, с которого он пришел, он все равно будет там как одна из оставшихся открытых вкладок. Вероятность того, что они вернутся, как только они закончат 9, гораздо выше.0003 внешний сайт .
Если ваш сайт не существует исключительно для того, чтобы направлять пользователей на другие сайты, вам всегда следует кодировать все внешние ссылки с кодом
target="_blank"
.Кстати, взгляните на строку кода прямо над обсуждаемой нами ссылкой, которая выглядит так:
Это HTML-комментарий. Хотя эта строка по-прежнему будет загружаться в ваш браузер при просмотре страницы, браузер никогда не отображает и не принимает во внимание что-либо между начальными
.
HTML-комментарии никак не влияют на структуру страницы.
Кстати, ссылка в примере ведет на страницу Facebook, которую я использую, чтобы связаться со всеми без исключения моими учениками. Он называется CourseraWebDev. Нажмите на ссылку. Это внешний и откроет другую вкладку. Пожалуйста, нажмите и лайкните 👍 страницу!
Видишь, что я там сделал? 😊
Идентификаторы фрагментов во внешних ссылках
Идентификатор фрагмента 9Ссылки 0004, безусловно, не ограничиваются указанием на цели на одной и той же веб-странице.
Вы можете так же легко создать внешнюю ссылку на веб-страницу, добавив идентификатор фрагмента в конец внешнего URL-адреса .
Например, взгляните на следующую ссылку:
https://html.spec.whatwg.org/dev/links.html#links-created-by-a-and-area-elements
Если вы нажмете на эту ссылку здесь, вы увидите, что она открывает новую вкладку и ведет прямо к разделу страницы с подзаголовком « Ссылки, созданные элементами
a
иобласти
».Конечно, если вы хотите, чтобы другие внешние сайты ссылались на раздел вашей страницы, вам лучше создать какой-то способ для пользователей получить URL-адрес с идентификатором фрагмента .
В этом случае на странице WHATWG рядом с заголовком появился удобный символ
§
. Это очень распространенный символ, указывающий на то, что он содержит ссылку на раздел, к которому он примыкает.Очевидно, вам нужно предоставить пользователю возможность легко перемещаться по вашему сайту. Вы делаете это, предоставляя внутренних ссылок.
Внутренние ссылки — это те, которые указывают на другие веб-страницы (и ресурсы другого типа), являющиеся частью того же веб-приложения .
Поскольку другие страницы, являющиеся частью того же веб-приложения, размещаются с использованием того же доменного имени, обычно нет необходимости использовать абсолютные URL-адреса для значения атрибута
href
.Я планирую посвятить еще один пост абсолютной, относительной, URI, URL и т.д. теме. Пока просто знайте, что абсолютный URL относится к URL, который включает доменное имя, а относительный URL не включает.
Например, абсолютный URL-адрес страницы с информацией об этом сайте будет следующим:
В то время как относительная ссылка на ту же страницу будет выглядеть так:
Давайте посмотрим на следующий пример (
links-internal.html
):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 <голова> <мета-кодировка="utf-8">Внутренние ссылки <тело>Внутренние ссылки
<раздел> Мы можем ссылаться на файл в том же каталоге как этот файл HTML следующим образом: Ссылка на файл в том же каталоге <дел> DIV Ссылка на файл в том же каталогеКак видите, все ссылки на странице являются относительными URL-ссылками. Поскольку значение атрибута
href
включает только имя файла, без указания имени каталога в пути, браузер будет считать, что файлsame-directory.html
находится в том же каталоге , что и содержащая страница. (ссылки-internal.html
).Также рекомендуется всегда указывать заголовок
для тега
, как я сделал в этом документе. Значение атрибута
title
используется программами, называемыми программами чтения с экрана . Программы чтения с экрана помогают слабовидящим людям просматривать страницу, автоматически читая ее содержимое вслух.Является ли
встроенным или блочным элементом
?Обратите внимание на вторую ссылку в нашем примере (
links-internal.html
). содержание ссылки или 9Тег 0011 — это тег
.Как я объяснял ранее, встроенный элемент не может содержать элемент блочного уровня как часть своего содержимого.
Итак, если предположить, что мой код действителен , говорит ли это нам о том, что элемент
a
является элементом блочного уровня ?Давайте посмотрим на эту HTML-страницу в браузере.
Как обсуждалось ранее, элемент уровня блока всегда настаивает на отображении на отдельной строке. Тем не менее, мы видим, что первая ссылка счастливо разделяет строку с другим окружающим контентом.
Итак, он отображается как встроенный элемент , но может ли он включать блочный элемент ?
Ага. Почему? Вот почему:
Как видите, элемент
a
принадлежит как : Flow content, так и Phrasing content model.(см. эту статью, если вы не знаете, что это такое)
В предыдущих версиях HTML элемент
a
был строго встроенный элемент . Это представляло проблему, потому что очень часто мы хотели обернуть целый блок контента и сделать его кликабельной ссылкой.