Современные браузеры поддерживают так называемый raw формат URL, когда вместо адреса изображения в CSS и даже в HTML <img src=»…» /> можно задать закодированный массив бинарных данных картинки. Требования к формату raw, а вернее отличия в допустимых отклонениях от стандарта требует внимательно тестировать картинку под всеми требуемыми ТЗ браузерами.
Наиболее лояльные к формату кодирования Chrome и Opera (оба на движке chromium). Они рендерят, к примеру, картинку не взирая на пропущенный токен charset перед кодировкой:
|
|
<img src="data:image/svg+xml;utf8, ... "/> |
и наличие не urlencoded символов в коде.
FF и IE более принципиальны. Для FireFox важно указать токен charset перед utf8, а для IE придется еще и провести кодирование символов, так чтобы они соответствовали формату URL.
В javascript можно использовать ф-цию encodeURIComponent:
|
|
var img = $('img').get(0); img.attr(src, 'data:image/svg+xml;charset=utf8,' + encodeURIComponent('<svg ... </svg>')); |
Этот вариант удовлетворит всех.
Данная запись опубликована в 30.11.2018 01:06 и размещена в рубрике На первой полосе.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Октябрь 28, 2014 г.
У меня эта ошибка всплыла для поля с автозаполнением, когда список значений генерировался из PHP кода. Занималась генерацией списка значений вот такая функция:
[crayon-69f257d86d4b7367479422/]
Грабли обнаружились в случаях, когда поле title содержал ...
Читать
Март 27, 2017 г.
Уже пошел 5й год, как я выпустил Alpha Cache. Писал этот модуль для собственных нужд, не хотелось разбираться с тонкостями настройки готовых модулей, и задача мне казалась интересной.
Последний раз обновлял модуль больше года назад, т.к. особых ...
Читать
Май 29, 2016 г.
Здòрово, что велодвижение набирает обороты в Е-бурге. Главное - не оставаться за бортом этой движухи, по мере возможности вливаться.
Каждый год ...
Читать
Январь 16, 2025 г.
Компонент кнопка в android studio имеет огромное число цветовых настроек, связанных прежде всего с material design совместимостью. Поэтому установка цвета фона через атрибут - android:background не работает здесь.
Попробуйте использовать другой ...
Читать