Есть ли конфликт при добавлении <iframe>с содержимым HTML4 на веб-страницу HTML5? - PullRequest
3 голосов
/ 03 ноября 2011

Я хочу добавить <iframe>, источником которого является HTML 4, на веб-страницу HTML 5.Есть ли какие-либо конфликты JavaScript или DOM, о которых мне следует знать при этом?

Будет ли браузер сталкиваться с какими-либо ошибками, когда сталкивается с какой-то особой ситуацией, поскольку исходные типы документов различаются?

Ответы [ 3 ]

3 голосов
/ 03 ноября 2011

Вовсе нет, вы можете рассматривать iframe как окно браузера, открытое на вашей текущей странице. Если браузер сможет правильно отобразить страницу HTML4 на обычной вкладке, у него также не возникнет проблем с iframe (с некоторыми ограничениями, которые в любом случае не связаны с HTML4 / 5).

1 голос
/ 03 ноября 2011

Нет, конфликта не будет, при условии, что на обеих страницах есть <!DOCTYPE>.Фактически, браузеры даже не различают HTML 4 и HTML 5.

В частности, без DOCTYPE страница будет отображаться в режиме причуд, что может привести к нескольким существенным различиям.Например, в Internet Explorer страница будет отображаться более старой реализацией механизма, что приведет к нескольким DOM и JS (а также различиям в разметке).Если вы используете JS для манипулирования одним кадром из другого, есть вероятность, что что-то работает не так, как вы ожидаете - как в стандартном режиме.

TLDR;используйте <!DOCTYPE>.

0 голосов
/ 03 ноября 2011

Для IE, который имеет различный рендеринг и поддержку JS в зависимости от типа документа, если страница в рамке находится в одном домене, а родительский HTML5 вызывает методы для элементов в странице в рамке, доступные методы будут ограничены старым материалом , Например, addEventListener (), вероятно, не будет доступен для окна, документа и элементов на странице в рамке.

Таким образом, только потому, что страница HTML5 поддерживает все виды новых материалов, это не означает, что вы можете использовать ее среду для вызова этих функций для объектов на страницах с рамкой, отличной от HTML5.

...