Тег <iframe>

Тег <iframe> встраивает другой HTML-документ внутрь текущей страницы как отдельный вложенный browsing context.

Syntax

<iframe src="https://example.com/widget" title="Описание содержимого"></iframe>

Attributes

src / srcdoc URL внешнего документа, или srcdoc для встроенного HTML прямо в атрибуте.
sandbox Ограничивает возможности содержимого фрейма. Пустой sandbox="" — максимальные ограничения (без скриптов, без same-origin доступа); отдельные токены (allow-scripts и т.д.) ослабляют конкретные ограничения.
allow Permissions Policy для фрейма: camera, microphone, geolocation и т.д.
loading "lazy" откладывает загрузку фрейма за пределами видимой области.
title Обязателен для доступности — описывает назначение содержимого фрейма.

Example

<iframe src="https://www.youtube.com/embed/VIDEO_ID" title="Видео" loading="lazy"></iframe>

Notes

  • Без атрибута sandbox содержимое фрейма с другого origin всё равно изолировано same-origin policy браузера, но sandbox добавляет дополнительные явные ограничения даже для контента с того же origin.
  • sandbox="allow-scripts allow-same-origin" одновременно фактически снимает изоляцию — так комбинировать не стоит для недоверенного контента.

Accessibility

  • Без title скринридеры объявляют фрейм просто как "iframe" без пояснения, что внутри.

Похожие инструменты