HTML 5 не поддерживает такие атрибуты, как рамка кадра, прокрутка, ширина полей и высота полей (которые поддерживались в HTML 4.01). Вместо этого в спецификации HTML 5 был введен атрибут seamless. Атрибут seamless позволяет встроенному фрейму выглядеть так, как если бы он отображался как часть содержащего документа. Например, не будут отображаться границы и полосы прокрутки.
По данным MDN
frameborder
Устарело с HTML5
Значение 1
(по умолчанию) рисует рамку вокруг этого кадра. Значение 0
удаляет границу вокруг этого кадра, но вместо этого вы должны использовать границу свойства CSS для управления границами.
Как сказано в приведенной выше цитате, вы должны удалить границу с помощью CSS;
либо inline ( style="border: none;"
), либо в вашей таблице стилей ( iframe { border: none; }
).
При этом, похоже, не существует ни одного поставщика iframe, который бы не использовал frameborder="0"
. Даже YouTube по-прежнему использует этот атрибут и даже не предоставляет атрибут стиля, чтобы сделать фреймы обратно совместимыми, когда рамка фреймов больше не поддерживается. Можно с уверенностью сказать, что атрибут в ближайшее время никуда не денется. Это оставляет вам 3 варианта:
- Продолжайте использовать
frameborder
, просто чтобы убедиться, что он работает (пока)
- Используйте CSS, чтобы делать "правильные" вещи
- Используйте оба. Хотя это не решает проблему несовместимости (как и вариант 1), оно работает и будет работать в каждом браузере, который был и будет
Что касается предыдущего состояния этого ответа десятилетней давности:
seamless
Атрибут был поддержан за такой короткий промежуток времени (или вообще некоторыми браузерами), что MDN даже не перечислить его как устаревшие функции. Не используйте его и не запутайтесь в комментариях ниже.