Мой основной проект: Боевые искусства в кинематографе! (fight-films.info)

Свеженькое
Благодарю за мат.помощь:
Реакция публики
Облако пометок

Недостатки использования CSS спрайтов

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

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

Прежде всего, нужно четко понимать, что данная технология предназначена для оформления фоновых наполнений элементов страницы, а не представления основных изображений ресурса, несущих смысловую нагрузку и являющихся иллюстрациями к текстовому наполнению. Используемое в случае спрайтов CSS свойство background и его модификации, в первую очередь предназначены для стилевого декоративного оформления элементов веб-страницы. Основные изображения должны размещаться при помощи тега <img> или в отдельных случаях, если для их правильного отображения требуется дополнительные компоненты, то с использованием элемента <object>. Именно так нужно поступать, разрабатывая семантически грамотно составленные документы.

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

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

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

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

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

Комментировать эту запись запрещено :(