frontend.co.il/articles/avoid-data-uris-english

аюэто в Википедии:

URI данных не кэшируются отдельно от содержащих их документов (например, файлов CSS или HTML), поэтому данные загружаются каждый раз при повторной загрузке содержащихся документов.

Означает ли это, что мой код загружается каждый раз при обновлении страницы или каждый раз, когда пользователь нажимает на навигационную ссылку? Что я могу сделать, чтобы кэшировать данные URI?

PS - я просто говорю о 20 или около того небольших файлов PNG (в основном шелковые иконки, но также файлы 2 * 16 КБ)

Ответы на вопрос(1)

Решение Вопроса

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

Если вы сохраняете свои URI данных только для своих таблиц стилей и отправляете надлежащие заголовки кэша, кэшируйтеdata: изображения вместе с вашим CSS не должны создавать проблем.

 syockit27 февр. 2011 г., 01:10
Это означает: данные всегда кэшируются вместе с содержащим документом. Если вы вносите изменения либо в URI данных, либо в HTML / CSS, который его содержит, все они должны быть перезагружены (поскольку они находятся в одном и том же документе)
 Ronny09 мая 2011 г., 00:17
@sysockit прав. @stephenmurdoch, пожалуйста, рассмотрите мойИзбегайте URI данных Статья, прежде чем использовать все base64 для ваших ресурсов :-) По сути, когда вы разделяете закодированные изображения по контексту на выделенные CSS-файлы с резервным MHTML для IE, вы получаете раздутые, трудно поддерживаемые спрайты.
 Emil Lerch25 мая 2012 г., 01:59
У @Ronny есть отличная статья, но похоже, что URL-адрес изменился. Я нашел это через Google наfrontend.co.il/articles/avoid-data-uris-english
 stephenmurdoch25 янв. 2011 г., 10:40
спасибо, теперь я полностью понимаю, замечание в Википедии показалось мне, что я не смогу это сделать. ура

Ваш ответ на вопрос