Почему браузер не создает соответствующий HTML-код для открытия аудиофайлов - PullRequest
0 голосов
/ 15 декабря 2018

Если вы попытаетесь открыть аудиофайл в браузере, браузер создаст следующий код:

<video controls autoplay name="media">
     <source src="https://stopmusic.net/_ld/65/6549_B.B.E-Seven_Day.mp3" type="audio/mp3">
</video>

Почему он создает разметку, используя тег <video>?

Если мы посмотрим на спецификацию , мы увидимследующее:

Когда изображение, видео или аудио ресурс должны быть загружены в контексте просмотра, пользовательский агент должен создать объект Document, пометить его как документ HTML, установить его содержимоевведите вычисляемый MIME-тип ресурса (введите в алгоритме навигации), инициализируйте объект Document, добавьте элемент html в Document, добавьте элемент head и элемент body к элементу html, добавьте элемент host элемента дляmedia, как описано ниже, к элементу body и установите соответствующий атрибут элемента host element, как описано ниже, в адрес ресурса изображения, видео или аудио.

enter image description here

Как вы можете видеть, открывая определенный медиафайл в браузере, браузер создает определенный код, связанный с ним.И в этом случае по какой-то причине браузер не создает связанный с ним код.Почему так происходит?Это ошибка спецификации реализации?

1 Ответ

0 голосов
/ 18 декабря 2018

Я предполагаю, что это то, что Google Chrome делает автономно, мне кажется, что у них есть собственный проприетарный алгоритм, который приравнивает типы файлов к определенным тегам, таким как <video>, <audio> и <img>.Я бы также подумал, что файл .mp3 будет открыт тегом <audio> и ничем иным, поскольку он является аудиофайлом.После рассмотрения этих вещей не имеет никакого логического смысла, что эта функция будет выполнять то, что она делает с производственной стороны вещей.Можно предположить, что любой файл, заканчивающийся расширением 'mp4', будет использовать тег <video>.Я думаю, что это яркий пример функции, которую они заканчивали и решили в любом случае использовать, потому что она работала и не требовала дополнительных усилий.

...