Pull to refresh

Comments 11

В Firefox не отображается видео на бэкграунде, зато на моем iPhone 8 во всех трех браузерах: Safari, Chrome и Firefox страница отображается корректно.

В Firefox на iOS используется движок Safari, как Apple требует для всех браузеров на iOS:

Apple's policies require all iOS apps that browse the web to use the built-in WebKit rendering framework and WebKit JavaScript, so using Gecko is not possible.

https://en.wikipedia.org/wiki/Firefox_for_iOS

Так что там совсем не Firefox.

Открыл в firefox (91 версия) первую ссылку, там видео бекграундом показывает )
По второй ссылке видео только в правом нижнем углу.
При загрузке конечно сначала видно 2-3 секунды символьный мусор, потом появляется web-страничка

Было бы круто, если бы получилось сделать бесконечный цикл.

В картинку встроен html с отображением этой же картинки. При скачивании картинки в неё всё так же встроен html с этой же картинкой. И так до бесконечности.

Именно так и работает, откройте страницу, в правом нижнем углу "картинка-в-картинке" это анимированный гиф, сохраните его к себе, и там будет вебстраница. Увидеть ее можно если переименовать .gif в .htm

В статье GIF изнутри есть описание формата GIF. У GIF также как и у JPEG есть блок комментария который располагается почти в начале файла и туда можно поместить html код.

21 F9 [байт размера блока данных] [блок данных] 00

Блоков данных в комментарии теоретически может быть несколько. Если надо вместить больше чем 255 байт нужно тогда это учитывать в HTML коде и правильно его делить.

В конце html кода можно использовать хак с открытием комментария как в случае lcamtuf но проблема в том что браузер интерпретирует дальнейший мусор как html код и пытается его парсить.

С древних времён существует тэг <plaintext> он позволяет сообщить браузеру что всё что идет после его открытия надо интерпретировать как обычный текст. Если его сразу скрыть например при помощи атрибута hidden то браузер уже не будет так страдать пытаясь парсить и отрисовывать мегабайты бинарных данных.

Используя вашу гифку сделал простой пример: html, gif.

Я не стал скрывать заголовок GIF файла.

Поскольку HTML код страницы посмотреть затруднительно из за размера файла выложу его здесь:


<title>Simple HTML in GIF</title>
<p>Simple HTML in GIF</p>
<img src="#"><plaintext hidden>

Спасибо большое! Буду пробовать!

С тэгом <plaintext> проблема заключается в том, что этот тэг не закрывается, все что идет после него будет простым текстом, поэтому не получится дописать HTML в конец файла.

Да в том и суть что весь HTML код должен идти до <plaintext> а большая часть файла после него чтоб она не парсилась как HTML. Соответственно HTML код должен полностью распологатся внутри GIF файла в секции комментария которая идёт в его начале.

Я аналогично запихнул HTML код в ваше видео. Правда уже при помощи ffmpeg а не HEX редактора.

Одно не понятно. Зачем это всё, и есть ли какое-то применение кроме "потому что я могу" ?

Ну например чтобы описание содержимого файла было прочно связано с ним и распространялось вместе с файлом в p2p сетях.

Sign up to leave a comment.

Articles