Comments 59
UFO just landed and posted this here
отвечу по существу: Вы не правы :)
А теперь, действительно, по существу.
3-5% увеличения объема (после gzip'а) с лихвой окупают время на дополнительные запросы к серверу. Для примера, время на дополнительный запрос 50-100мс (без учета времени загрузки контента), сколько за это время можно передать данных?
gzip, gzip и еще раз gzip. Размер только уменьшается
http://webo.in/articles/habrahabr/46-cro…
Имеется в виду, что фоновые картинки либо вставлены все через data:URL (их загрузка идет вместе с загрузкой CSS), либо через предзагрузку (их загрузка начинается до загрузки CSS-файла).
Последний абзац самый здравый :)
P.S. Если кто-то хочет заминусовать, предлагаю сначала ознакомиться с блогом Клиентская оптимизация в полном объеме. Все заявленные вопросы там неоднократно обсуждались
А теперь, действительно, по существу.
Вставка картинок через data:URL - это увеличение во-первых, объема страницы
3-5% увеличения объема (после gzip'а) с лихвой окупают время на дополнительные запросы к серверу. Для примера, время на дополнительный запрос 50-100мс (без учета времени загрузки контента), сколько за это время можно передать данных?
+ фикс для mhtml
gzip, gzip и еще раз gzip. Размер только уменьшается
http://webo.in/articles/habrahabr/46-cro…
мы все дальше и дальше откладываем загрузку background-images
Имеется в виду, что фоновые картинки либо вставлены все через data:URL (их загрузка идет вместе с загрузкой CSS), либо через предзагрузку (их загрузка начинается до загрузки CSS-файла).
Последний абзац самый здравый :)
P.S. Если кто-то хочет заминусовать, предлагаю сначала ознакомиться с блогом Клиентская оптимизация в полном объеме. Все заявленные вопросы там неоднократно обсуждались
+4
Только я, вдохновленный вашими статьями, начал подумывать про спрайты и тут такое... заголовок, правда, оказался страшнее самой статьи, но все-таки.
Теперь жду в следующей статье разоблачения gzip, только прошу, не надо заголовков типа "gzip - убил мой Xeon, не используйте его!" :)
Теперь жду в следующей статье разоблачения gzip, только прошу, не надо заголовков типа "gzip - убил мой Xeon, не используйте его!" :)
+1
оно уже было :) почти оправдалось: gzip убил мой P2-сервер, не используйте его :)
http://webo.in/articles/habrahabr/33-gzi…
http://webo.in/articles/habrahabr/33-gzi…
+2
UFO just landed and posted this here
я пишу с запасом на будущее. Очень скоро профессия фронт-енд архитектора/клиентского оптимизатора станет по-настоящему востребована. Полгода назад в смысле литературы был полный вакуум, сейчас более-менее.
Я лишь занимаюсь образованием сообщества, не более. Умную голову на плечах никто не отменял, просто хочется сэкономить время будущим коллегам.
Я лишь занимаюсь образованием сообщества, не более. Умную голову на плечах никто не отменял, просто хочется сэкономить время будущим коллегам.
+1
И где конкретные минусы спрайтов то? Все пункты статьи можно свести к одному нытье верстальщика. Мне, как посетителю веб-страницы, абсолютно насрать на верстальщика. Я хочу, чтобы было быстро а значит, в подходящих для этого случаях, мне нужны спрайты.
-3
На практике использую спрайты. Верстальщик спокойно включает отдельные картинки в css, а на этапе релиза скрипт собирает все разрозненные css в один учитывая их последовательность и правила.При этом формируется из всех картинок спрайт. Проблема палитры компенсируется использованием png. Пока еще встречаются ошибки в собирающем скрипте, но все равно каждый релиз нового шаблона проверяется в релиз кандидате.
+2
алгоритм сборки, например, таких картинок
достаточно сложен. Мне кажется, что его корректная реализация не стоит потраченных сил. Хотя везде есть компромиссы...
достаточно сложен. Мне кажется, что его корректная реализация не стоит потраченных сил. Хотя везде есть компромиссы...
0
да, переодически встречаются интересные задачи, и решать их проще на практике уже столкнувшись с проблемой. Пока небыло чего либо, что бы не удалось решить. На счет браузеров в которых совсем все плохо, то это решается на уровне представлений. Все равно приходится ориентироваться на разношерстную аудиторию и в том числе на мобильные клиенты. Кстати таким же образом собирается javascript код с минимизацией. Как мне кажется очень элегантное решение, когда имеем 1 css 1 png и 1 js
0
когда вопрос загруженности сервера очень важен - спрайты оправдывают себя. конкретный пример - используя технику спрайтов (повсеместно, и для gif и для png 24) уменьшил нагрузку на наш images сервер (порядка 30 серверов в сумме) в 5 раз.
0
Лично я знаю только один серьёзный аргумент не использовать спрайты - это png + IE6. Вот нельзя в этом популярном браузере использовать спрайты для картинок с полупрозрачностью. Если бы не это, то спрайты - это очень даже хорошо.
+2
Есть такое дело, однако, я не использовал спрайты только потому, что все остальное вставлено через data:URL, а mhtml не работает с прозрачностью
Если полупрозрачная картинки одна-единственная, то ее можно добавить в левый верхний угол, спрайты прокатят.
Если речь идет о несовпадении цветов для IE, то удаление gAMA-чанка решает (вышеприведенная картинка как раз так и сделана).
Если полупрозрачная картинки одна-единственная, то ее можно добавить в левый верхний угол, спрайты прокатят.
Если речь идет о несовпадении цветов для IE, то удаление gAMA-чанка решает (вышеприведенная картинка как раз так и сделана).
0
посмотрите http://fotki.com в IE6
навигация - спрайты, png 24bit
навигация - спрайты, png 24bit
0
При заходе на сайт был переправлен на http://www.fotki.com/Russia/ru/. И там спрайтов не нашёл :( Укажите пальцем, если не трудно.
0
Ага, ага, знакомый прием ведения дискуссии, когда безбожно раздувается, утрируется одна сторона и делаются далекоидущие выводы.
На самом деле в реальности все достаточно просто. Как и в любой другой области нужен разумный компромисс и любую технику надо применять обдуманно, понимая что ты делаешь и для чего. И если не впадать в крайности, лепя где надо и где не надо, а с умом подходить к разработке, то окажется, что сама по себе техника css-спрайтов достаточно удобна для дизайнера и верстальщика, не говоря уже о программисте, а во многих случаях остается чуть ли не единственной альтернативой (вспомнить хотя бы как без спрайтов ie работает со сложными макетами, где количество изображений исчисляется десятками - даже в локальном файле при обновлении приходится наблюдать как бежит счетчик загруженных изображений).
Большинство из озвученных минусов - логичный результат необдуманного и неумелого использования техники, а выводы из таких предпосылок мало чего стоят
На самом деле в реальности все достаточно просто. Как и в любой другой области нужен разумный компромисс и любую технику надо применять обдуманно, понимая что ты делаешь и для чего. И если не впадать в крайности, лепя где надо и где не надо, а с умом подходить к разработке, то окажется, что сама по себе техника css-спрайтов достаточно удобна для дизайнера и верстальщика, не говоря уже о программисте, а во многих случаях остается чуть ли не единственной альтернативой (вспомнить хотя бы как без спрайтов ie работает со сложными макетами, где количество изображений исчисляется десятками - даже в локальном файле при обновлении приходится наблюдать как бежит счетчик загруженных изображений).
Большинство из озвученных минусов - логичный результат необдуманного и неумелого использования техники, а выводы из таких предпосылок мало чего стоят
0
Столько проблем, столько телодвижений, столько несемантичности, трудностей в манипулировании и изменении данных во всех этих хаках… А всё из-за невозможности проинструктировать браузер какие файлы следует «запулять» в один pipe line :-D
Вообщем нужно такой микроформат придумывать и реализовывать потихоньку в самых скорых на подъём броузерах :). Лучше конечно чтобы сами (бро) догадывались, но в среде веба это как-то затруднительно на мой взгляд.
Вообщем нужно такой микроформат придумывать и реализовывать потихоньку в самых скорых на подъём броузерах :). Лучше конечно чтобы сами (бро) догадывались, но в среде веба это как-то затруднительно на мой взгляд.
-1
Вот как только все производители браузеров тотально поддержат работу с векторной графикой - вот тогда будет вам и нам настоящее счастье :)
Спрайты и прочее приемы - это лишнее, нужен настоящий вектор.
Махонький файлик и такое можно на странице отрисовать и отмасштабировать, ух!
Спрайты и прочее приемы - это лишнее, нужен настоящий вектор.
Махонький файлик и такое можно на странице отрисовать и отмасштабировать, ух!
-1
использую спрайты и для прозрачных PNG в ИЕ, решение вопроса нашел тут http://handynotes.ru/2008/04/css-sprites…
+3
Позиционировать картинку с альфа-прозрачностью в IE6 можно при помощи pos:absolute, если элемент с фоном-спрайтом вложен в другой с размерами иконки. Но это доп. разметка.
+2
так, в бой пошла тяжелая артиллерия :)
-1
можно обойтись clip-ом, или есть ограничения?
-1
Решение с clip'ом вижу первый раз, надо будет попробовать.
-1
способ с доп.разметкой работает тут - http://fotki.com
с clip прототип можно посмотреть тут - http://sobolev.vladimir.ru/clip.html
с clip прототип можно посмотреть тут - http://sobolev.vladimir.ru/clip.html
-1
ага, последний случай почему-то напоминает по разметке верхнее меню для http://webo.in/ :)
-2
"использование CSS Srpites"
+1
UFO just landed and posted this here
Ну что за нездоровые призывы? Автору что-то показалось и он тутже написал, что спрайты зло?
С тем же успехом можно писать "AJAX — зло" или "XSLT — зло" и тому я могу привести массу примеров. Вчера вылупившийся верстальщик увидит страшный заголовок и склепает новый, а хуже того, переделает рабочий вариант. Естественно, улучшений не получит. С любой самой совершенной технологией можно нагородить такого, что мало не покажется.
Статья пригодится многим, но дополните её. Возьмите конкретный пример и реализуйте его в разных вариантах и с разным подходом. Вот это будет действительно полезно.
С тем же успехом можно писать "AJAX — зло" или "XSLT — зло" и тому я могу привести массу примеров. Вчера вылупившийся верстальщик увидит страшный заголовок и склепает новый, а хуже того, переделает рабочий вариант. Естественно, улучшений не получит. С любой самой совершенной технологией можно нагородить такого, что мало не покажется.
Статья пригодится многим, но дополните её. Возьмите конкретный пример и реализуйте его в разных вариантах и с разным подходом. Вот это будет действительно полезно.
-1
зачем? я уже продемонстрировал разные подходы в множестве статей, это хоть кому-то помогло?
http://webo.in/articles/habrahabr/48-flo…
http://webo.in/articles/habrahabr/46-cro…
http://webo.in/articles/habrahabr/44-uno…
http://webo.in/
http://webo.in/articles/habrahabr/48-flo…
http://webo.in/articles/habrahabr/46-cro…
http://webo.in/articles/habrahabr/44-uno…
http://webo.in/
-1
Я слежу(стараюсь) за Вашими постами, тема мне интересна, и надеюсь, что помогли они не только мне. В своем вопросе вы лукавите; если Вы считаете, что незачем, для чего тогда пишете?
В любом случае Вам спасибо и успехов.
В любом случае Вам спасибо и успехов.
0
Sign up to leave a comment.
CSS Sprites — зло, не используйте их!