Сия фигня увеличит суммарный html-код страницы, соответственно процент значащих слов в коде страницы уменьшится. Значит, поисковики будут "худшего мнения" о таких страницах, значит это анти-сео какое-то :)
Не покатит.
А какая разница-то, что в коде фунции будут выполнятся, что в CSS? Во втором случае как раз таки запросов будет меньше, потому как CSS имет свойство кэшироваться.
Ну, так конечно можно, но есть еще проблемы:
1. base64-код в среднем на 33% больше, чем исходный код, т.е. подключаемый файл будет еще больше, чем большой.
2. Все места, где выводятся картинки, надо будет делать слоями с бэкграундом.
Кроме того, я вообще не очень понимаю, кому особенно мешают http-запросы. И зачем пользователю грузить бОльший объем данных, чем надо - тоже не ясно.
по http-запросам - очень хорошо избегать их для служебных изображений и прочих маленьких и нужных "штучек" путём выставления Expires/max-age на год - не будет даже conditional GET-запросов.
Плюс, как я уже говорил, в IE8b1 уже 6 одновременных соединений на домен, думаю, остальные производители браузеров тоже быстро увеличат это количество.
Мне почему-то кажется, что единственное применение dataURI - как раз для таких "нестандартных" случаев, как капча.
Тот, кто будет затачивать сайт под seo, вряд ли станет использовать такую реализацию. Ее не нужно и не следует использовать где попало и как попало вообще.
P.S. Главное увеличить процент фраз «заработать на блоге» и «развратные учительницы сосут прямо на перемене»…
Одна табличная вёрстка хуже вёрстки на div'ах прежде всего тем, что у нее худший процент полезного контента в теле страницы. Хотя поисковики в тэги и не думают заглядывать.
Да.
Код
[span class="asdfsadfadsf" id="sadfkjhdsaghjklklghjklafh"]Текст[/span]
хуже для поисковиков, чем
[span]Текст[/span]
в связи с тем, что поисковики считают суммарный размер страницы, и уже относительно его высчитывают процент вхождения нужного слова.
Зачем такой изврат? Вот честно, не понимаю. Мало того, что base64 сам по себе больше чем изображение, дак вы еще к нему какую-то фигню добавляете. Что нам это дает? Уменьшение числа http-запросов? Ну дак вынесите картинки на отдельный домен, делов-то.
Уменьшение числа запросов здесь скорее не для уменьшения нагрузки на сервер, а для ускорения загрузки страницы. см. выше комментарии про аякс, который стоит пока грузятся картинки.
ну и + принудительный показ CAPTCHA (см. мой комментарий строчкой ниже)
Где я сказал, что это для уменьшения нагрузки на сервер? Какой нафиг яакс? Вы вообще про что? Кто стоит, куда стоит... бр, может стоит сперва хоть немного почитать теорию? Разнос картинок на другие домены/поддомены как раз и делается для того, чтобы как можно больше запросов совершались одновременно. Браузер ограничевает количество запросов к одному домену.
А в опере эта ваша копча не показывается.
Велосипед на квадратных колёсах изобретаете.
Во-первых, я ничего не изобретаю. Ну и ок, вы правы, вынос картинок на отдельный домен тоже хороший способ, я не знал про эту особенность работы браузеров.
Остаются ситуация, когда заголовки http и картинка весят существенно больше чем base64 и случай с узким каналом, когда всё выглядит некрасиво из-за недогрузившихся мелких графических элементов (аякс тут тоже тормозит - канал-то занят).
Иэх... мелкие картинки в одну побольше и играть позиционирование бакграунда.
Ну а если это лень, то элементарно спасет обычный dataURL (до 32 кб везде) и не надо никакие там mhtml'ины приплетать.
Keep it simple =)
Позиционирование бэкграунда - примерно того-же уровня изврат, что и data:, как мне кажется. (-:
Ну я, разумеется, надеюсь что все сознательные люди будут использовать простейший из доступных вариантов. Влазит в 32К - хорошо, не влазит - способ bolk'а.
Это лучше чем вообще не иметь выбора, осгласитесь.
там как раз нету никакого изврата, мелкие элементы можно грузить с 1 картинки, только позиционировать их как надо. А эта обработка в php + код больше - ускорится ли загрузка? и надо ли оно такое вообще...
я вот тоже не могу придумать, зачем может понадобиться отдавать через dataURI картинки, бОльшие, чем те же 32 кбайта. Это и какая-никакая, но нагрузка на CPU, это уменьшение распараллеливания скачивания (в том же IE8b1 можно качать в 6 одновременных соединений с одного домена), да и плюс к тому сама хтмлка становится больше. Не понимаю.
Эх, еще один... да ладно, ладно, стройте велосипеды с квадратными колёсами, мне не жалко. Технологию надо не только знать и понимать, но еще четко осозновать её применение.
Ну дак будут примеры то, нет? В статье 3 плюса (все они легко реализуются и обычными изображениями) и 5 минусов. А ваш способ добавляет минусов только.
Подозреваю. Почитываю иногда ваш блог. Иногда с интересном, иногда с иронией.
В любом случае — автор который не может сказать пару плюсов, используемой им технологии (а также ответить на замечания) не достоин внимания.
тут есть ещё один мега-приятный побочный эффект. в FF с плагином ImagesLikeOpera интегрированные картинки показываются всегда, независимо от настроек плагина.
Я не к тому что, кто-то кого-то опередил. Сие мне неизвестно.
Просто там для рендера картинки в IE используется VML. Что может-быть кому-то небезинтересно.
Читайте выше, там всё написано. Основной плюс - вместо большого количества мелких файлов, грузится один большой. Если Вы переписывали по сети какие-то данные типа небольших картинок, то могли заметить что при переписывании их как есть скорость в разы меньше чем если засунуть их в один большой zip (который может занимать и больше, т.к. jpeg зипом не сожмёшь).
Допустим, на странице используется 10 картинок, общий объем которых составит 10KB.
Если использовать данную технологию, какой будет вес вашего одного файла?
Зависит от того используется ли сжатие GZip или нет. Если используется - то около эти самых 10 килобайт. А чтобы дать точный ответ о разнице в весе и скорости загрузки нужно провести серьёзное тестирование с разным количеством встроенных картинок и разным их весом. Без этого любые утверждения - лишь предположения.
Хм. Я подобный подход уже применял, немного переписав png.htc, так как в нем нужен прозрачный гифиг, а делать запрос не было никакого желания.
Насчет уменьшения кол-ва http запросов, скажу просто - используйте css sprites. Самое то для бэкграундов и иконок. Я вообще объединяю все какие только возможно оформительские изображения в один файл.
data URI