Россия+7 (495) 960-65-87

Mobile Friendly: повышаем скорость загрузки сайта на мобильных устройствах

Россия+7 (495) 960-65-87
Шрифт:
1 10602

Дикая гонка оптимизаторов по улучшению сайтов, предназначенных для мобильных пользователей, к выходу алгоритма Google Mobile Friendly, часто заставляет забыть о технической составляющей. Но ведь представители поисковика неоднократно заявляли, что скорость загрузки — один из ключевых факторов ранжирования выдачи. Может ли случиться, что в погоне за адаптивностью вы потеряете былую сноровку сайта?

Определение скорости загрузки сайта

Итак, от чего мы будем отталкиваться? В сети можно найти множество бесплатных и не только инструментов, позволяющих оценить скорость загрузки сайта. Однако инструменты разработчика Google Chrome ничуть не уступают им в возможностях, а WebPageTest удобен для измерения метрик «со стороны». В статье использовались инструменты Google Chrome как общедоступные и самые простые в работе.

В Chrome инструменты разработчика доступны по комбинации Ctrl+Shift+C или Ctrl+Shift+I, а также в выпадающем меню («Дополнительные инструменты» — «Инструменты разработчика»). Открывшийся подраздел позволяет увидеть всю информацию о содержимом страницы. Кроме прочего, в нём можно настроить симуляцию смартфонов и планшетов.

Укажите интересующее устройство, например, iPhone 6, и введите в адресную строку адрес своего сайта. Он откроется перед вами в том виде, в котором доступен пользователям последней модели смартфонов Apple. Панель инструментов покажет общее время загрузки, размер страницы и количество запросов, необходимых для её рендера. Во вкладке Network даже доступна визуализация процесса загрузки:

1.png

Оптимизируем изображения

Согласно статистике HTTP Archive, контент страницы на 60% состоит из изображений. Очевидно, что именно с ним следует начать оптимизацию, как только инструменты разработчика подтвердят эту теорию для вашего сайта. На десктопах вес страницы не так критичен, но мобильный интернет часто серьезно уступает по скорости, и плохо обработанные фото могут погубить все метрики скорости загрузки.

Конечно, на представительском сайте все изображения должны быть четкими, без какого-либо блюра или артефактов, свойственных JPG-оптимизации. Однако стоит ли пересылать картинку шириной 1600 пикселей на мобильный экран? Даже если используется Retina-экран, лишние 3 секунды загрузки, обеспеченные таким снимком, не окупятся.

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

Кстати, не забудьте о мета-теге viewport. Он помогает мобильным браузерам понять, что перед ними — адаптивная страница, и её не нужно автоматически сужать до размера экрана устройства. Его отсутствие может повлиять на эмулирование устройств посредством Google Chrome.

< meta name="viewport" content="width=device-width, initial-scale=1.0" />

Неправильный подход

Адаптивный дизайн полагается на отличные от десктопной версии CSS-файлы, на которых и строится альтернативное представление. Самым простым и очевидным решением выглядит встраивание дополнительного условия в него, например:

@media (min-width:376px) {

.mobile_image {

display: none;

}

.desktop_image {

display: inline;

}

}

@media (max-width:375px) {

.mobile_image {

display: inline;

}

.desktop_image {

display: none;

}

}

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

Правильный подход

Используйте фоновое изображение, путь к которому устанавливается при помощи CSS:

@media (min-width:376px) {

.myimage {

background-image: url("desktop.png");

width: 700px;

height: 550px;

}

}

@media (max-width:375px) {

.myimage {

background-image: url("mobile.png");

width: 350px;

height: 130px;

}

}

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

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

Подумайте о переходе с jQuery

Хотя jQuery и стала кровеносной системой для миллионов сайтов, существуют вполне самодостаточные заменители этой библиотеки, более подходящие для мобильных пользователей.

Проблема jQuery в её универсальности. Разработчики изначально ставили своей целью поддержку максимально широкого количества браузеров и строгое следование рекомендациям W3C. В результате большая часть библиотеки представляет собой «обертки» для поддержки устаревших браузеров и старого кода, более не используемого. Мы же имеем дело с мобильными устройствами, на большинстве которых установлены относительно современные браузеры. В частности, здесь будет излишней поддержка Internet Explorer версий ниже 8.

Если вам нужен функционал jQuery, то обратите внимание на Zeptojs. В нём нет части специфических функций jQuery, но в целом он «весит» меньше и работает немного быстрее. Синтаксис этой библиотеки аналогичен jQuery, поэтому переезд не потребует массы времени или переобучения программиста.

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

Проверьте настройки кэша

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

О работе кэша написано немало статей. Например, на Habrahabr затронули теоретическую сторону вопроса, а на Mobify разобрали работу с кэшем на примерах. Для некоторых CMS также доступны модули, позволяющие контролировать процесс кэширования.

По факту, кэш является одной из самых эффективных оптимизаций сайта. Уделите ему особое внимание — не стоит заставлять браузеры закачивать один и тот же файл при каждом обращении.

Анимации в формате GIF — зло

Сегодня GIF-анимации кажутся приветом из прошлого, но они продолжают появляться тут и там. Мобильные устройства поддерживают HTML5-видео, которые намного удобнее и разумнее использовать для вставки микроклипов или простых анимаций. Более того, GIF серьезно ограничены в цветах и «весят» больше, чем аналогичное видео в HTML5. Используйте современные технологии, пытаясь донести информацию до посетителей — мобильный интернет оценит ваши старания.

Будущее: HTTP/2

HTTP версии 1.1 появился более 15 лет назад, и теперь медленно (крайне медленно) готовится уйти на покой, оставив своё место HTTP/2. Последний обещает стать качественным прорывом в работе веб-сетей, обеспечив серьезное ускорение загрузки сайтов. Сейчас протокол используется на некоторых серверах и активно тестируется некоторыми компаниями. Не стоит мчаться оптимизировать сайт под него — до полноценного внедрения еще годы. Но ознакомиться с его особенностями стоит каждому разработчику, например, по этой статье.

В заключение

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

Источник http://moz.com/blog/how-to-keep-your-site-fast-for-mobile-friendly


(Нет голосов)
Читайте нас в Telegram - digital_bar

Есть о чем рассказать? Тогда присылайте свои материалы Даше Калинской


Новые 
Новые
Лучшие
Старые
Сообщество
Подписаться 
Подписаться на дискуссию:
E-mail:
ОК
Вы подписаны на комментарии
Ошибка. Пожалуйста, попробуйте ещё раз.
Отправить отзыв
  • Вася
    больше года назад
    Забавно, что этот сайт сам не оптимизирован для мобильных :))
    -
    0
    +
    Ответить
ПОПУЛЯРНЫЕ ОБСУЖДЕНИЯ НА SEONEWS
Сколько ссылок помогут продвинуть молодой сайт
Павел Андрейчук
33
комментария
0
читателей
Полный профиль
Павел Андрейчук - Дело в том, что вряд ли в ваших платных "качественных" кейсах найдётся хоть пару % действительно новой и полезной информации которой бы не было на общедоступных источниках.
Рейтинг Известности 2018: второй этап народного голосования
Константин Сокол
3
комментария
0
читателей
Полный профиль
Константин Сокол - Кто был ответственный за дизайн таблицы голосования? Копирайтер?
Сайт на WordPress: за и против
Мира Смурков
1
комментарий
0
читателей
Полный профиль
Мира Смурков - Людмила, я согласен с большинством комментаторов. Вы хоть один полноценный магазин сделали на этих движках? Woocommerce это система с супер возможностями. И к ней есть дополнительные модули, с функционалом, который вряд ли появиться на Битрикс. А самому это программировать - сотни тысяч рублей на разработку. А приведя в пример сложности с robots.txt и Sitemap вы ставите под вопрос вашу компетенцию в понимании Интернет-бизнеса и веб-разработки в целом. Во-первых это такие мелочи, а во-вторых это все делается на вордпресса за 2 минуты, и опять же с возможностями многократно превышающими Битрикс.
Обзор популярных CMS: плюсы и минусы
Гость
1
комментарий
0
читателей
Полный профиль
Гость - как по мне joomla! самая удобная и гибкая система из всех современных (я про wp раньше так думал, пока меня в Extrit не убедили в обратном). Раньше всегда оставался на техподдержке, потому что сам заполнять не мог, а теперь делаю это сам, потому что админка простая как палка. + на других цмсках при просьбе что-то добавить мне либо цену загибали овер 100500 либо говорили - нереально, делай новый сайт. А на joomla норм
Google обошел Яндекс по популярности в России в 2018 году: исследование SEO Auditor
Рамблер
1
комментарий
0
читателей
Полный профиль
Рамблер - Вот вроде отечественный - это сказано верно.. «Я́ндекс» — российская транснациональная компания, зарегистрированная в Нидерландах. Так говорится в Википедии. И с хрена ли ОТЕЧЕСТВЕННЫЙ поисковик зарегистрирован в Европе? И где платится основная часть налогов? Ну-ууу, точно не в России. И если запахнет жаренным, то был Яндекс и нет Яндекса!
8 методик в SEO, от которых давно пора отказаться
Евгений Сметанин
11
комментариев
0
читателей
Полный профиль
Евгений Сметанин - Факторов вообще очень много, согласитесь, вы будете использовать максимальное их количество, особенно, если в ТОПе засели агрегаторы с сумасшедшими ПФ. В таких случаях, вхождение ключа в домен для маленького профильного сайта, сыграет свою положительную роль. Конечно же, если контент на страницах хорошего качества. У меня есть несколько успешных кейсов на эту тему. На сайте продают несколько видов товаров, а выстреливает в ТОП тот, название которого присутствует в доменном имени. Как корабль назовешь, так он и поплывет, верно?))
Инструкция: настраиваем цели Яндекс.Метрики через Google Tag Manager
Roman Gorkunenko
1
комментарий
0
читателей
Полный профиль
Roman Gorkunenko - Здравствуйте. Подскажите, пожалуйста, можно с айпи метрики вытащить среднюю стоимость клика по утм меткам? В метрике есть такой шаблон tags_u_t_m, но он не совместим с меткой директа, у них разные префиксы.
Аудит структуры интернет-магазина мебели от «Ашманов и партнеры»
Дмитрий
11
комментариев
0
читателей
Полный профиль
Дмитрий - Сергей, а вы допускаете, что вся ваша жизнь - seo-миф?
Идеальный каталог для продвижения сайта: структура и функционал
Татьяна Ягутьева
6
комментариев
0
читателей
Полный профиль
Татьяна Ягутьева - Уважаемый Денис, сделайте сами напишите свою статью. Посоветуйте другую универсальную CMS, желательно идеальную по всем параметрам. Битрикс очень сильно зависит от разработчика. Если у него прямые руки - бардака не будет. А вообще, конечно, холивар на тему CMS/конструкторов/фреймворков - наверное, вечный. Давайте не будем начинать :)
Как выбрать подрядчика для продвижения сайта: 7 уровней воронки поиска
aashutosh
1
комментарий
0
читателей
Полный профиль
aashutosh - data science training institute in noida- Webtrackker Technology (8802820025) providing Data Science Training in Noida. Get ✓ 40 Hours Learning training✓ 70 Hrs Projects ✓ 24 X 7 Support ✓ Job Assistance. WEBTRACKKER TECHNOLOGY (P) LTD. C - 67, sector- 63, Noida, India. E-47 Sector 3, Noida, India. +91 - 8802820025 0120-433-0760 +91 - 8810252423 012 - 04204716 EMAIL:info@webtrackker.com webtrackker.com/Best-Data-Science-Training-Institute-in-Noida.php
ТОП КОММЕНТАТОРОВ
Комментариев
910
Комментариев
834
Комментариев
554
Комментариев
540
Комментариев
483
Комментариев
373
Комментариев
345
Комментариев
262
Комментариев
246
Комментариев
171
Комментариев
156
Комментариев
137
Комментариев
121
Комментариев
100
Комментариев
97
Комментариев
97
Комментариев
96
Комментариев
80
Комментариев
74
Комментариев
67
Комментариев
60
Комментариев
59
Комментариев
57
Комментариев
56
Комментариев
55

Отправьте отзыв!
Отправьте отзыв!