Современные браузеры поддерживают так называемый 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 и размещена в рубрике На первой полосе.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Июль 5, 2023 г.
Очередная задача с литкода (№60. Permutation Sequence). В общем случае формулируется так: дан набор элементов, требуется вернуть этот набор после k перестановок. ...
Читать
Февраль 5, 2010 г.
Вещь из разряда know-how. Нужно добавить в интересующий вас шаблон комментарий вида:
[crayon-6a869e2336e2c961194593/]
И тогда вы тот час же увидите в списке шаблонов редактора страницы ещё одну запись - "Имя вашего шаблона". Не правда ли просто?
Читать
Июль 17, 2022 г.
В самом простом случае нужно обеспечить функциональность на уровне хеш массива, т.е. работу с парами ключ + значение.
В Xamarin данный функционал инкапсулирован в статический класс Preferences.
В рамках вашего Android приложения вы можете выполнять ...
Читать
Июль 30, 2018 г.
Создание новой ветки - это рутинная операция в GIT. Как указать на основе какой существующей ветки нужно создать новую?
По умолчанию, за основу будет взята текущая ветка, в которой вы находитесь. Например:
[crayon-6a869e2337255002687751/]
Сначала ...
Читать