РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗sePmInIM 36 of 123 menu

Некорректная верстка в SEO

Поисковый робот читает HTML сверху вниз и количество текста, который он читает - ограничено. Если в начале страницы идут большие блоки CSS и JavaScript, то основной контент оказывается ниже. Робот может прочитать только служебный код и не дойти до текста страницы.

Поэтому в HTML должна оставаться только разметка, а стили и скрипты нужно выносить в отдельные файлы.

Пример 1

Плохо, когда CSS пишут прямо на странице в теге style. Особенно если таких блоков много и они стоят до основного контента.

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

Плохой вариант:

<style> .header { background: #fff; } .menu { display: flex; } .price { color: red; } </style> <h1>Каталог</h1> <p class="price">1200 руб.</p>

Правильно подключать отдельный CSS-файл:

<head> <link rel="stylesheet" href="/css/style.css"> </head> <body> <h1>Каталог</h1> <p class="price">1200 руб.</p> </body>

Пример 2

Та же проблема возникает, когда JavaScript пишут прямо в HTML в теге script. Большой скрипт в начале страницы загромождает код и отодвигает основной контент.

Длинный JavaScript-код в HTML занимает место в начале страницы и мешает роботу быстрее дойти до основного текста.

Плохой вариант:

<script> function formatPrice(value) { return value.toLocaleString('ru-RU') + ' руб.'; } function initGallery() { // код галереи } </script> <h1>О компании</h1> <p>Мы работаем с 2010 года.</p>

Правильно подключать JavaScript отдельным файлом:

<h1>О компании</h1> <p>Мы работаем с 2010 года.</p> <script src="/js/app.js" defer></script>

Пример 3

Плохо и когда оформление задают через атрибут style у каждого элемента. Один и тот же набор стилей приходится повторять снова и снова прямо в HTML.

Из-за этого верстка занимает намного больше места. Робот читает длинные повторяющиеся атрибуты вместо самого содержания страницы.

Плохой вариант:

<h1 style="font-size: 24px; margin: 0 0 16px; color: #222;"> Каталог </h1> <p style="margin: 0 0 12px; font-size: 16px; line-height: 1.5; color: #333;"> 128 товаров </p> <p style="margin: 0 0 12px; font-size: 16px; line-height: 1.5; color: #333;"> Бесплатная доставка от 3000 руб. </p>

Правильно вынести оформление в CSS-файл и оставить в HTML короткую разметку:

<head> <link rel="stylesheet" href="/css/style.css"> </head> <body> <h1 class="title">Каталог</h1> <p class="text">128 товаров</p> <p class="text">Бесплатная доставка от 3000 руб.</p> </body>

Практические задачи

Дана верстка:

<h1>Каталог</h1> <style> .note { color: gray; } </style> <p class="note">128 товаров</p>

Объясните, в чем ошибка и исправьте ее.

Дана верстка:

<script> function showBanner() { // код баннера } </script> <h1>О компании</h1>

Объясните, в чем ошибка и исправьте ее.

Дана верстка:

<p style="margin: 0 0 12px; font-size: 16px; line-height: 1.5; color: #333;"> Доставка по городу за 1 день </p> <p style="margin: 0 0 12px; font-size: 16px; line-height: 1.5; color: #333;"> Самовывоз из пункта выдачи </p>

Объясните, в чем ошибка и исправьте ее.

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