: Элемент Inline Frame — HTML: Язык гипертекстовой разметки
HTML-элемент
представляет вложенный контекст просмотра, встраивая другую HTML-страницу в текущую.
Каждый встроенный контекст просмотра имеет собственный документ и позволяет навигацию по URL. Навигации каждого встроенного контекста просмотра линеаризуются в историю сеансов самого верхнего контекста просмотра . Контекст просмотра, в который встроены другие, называется 9.0009 родительский контекст просмотра . Самый верхний контекст просмотра — тот, у которого нет родителя — обычно является окном браузера, представленным объектом Window
.
Предупреждение: Поскольку каждый контекст просмотра представляет собой полную среду документа, каждый
на странице требует увеличения объема памяти и других вычислительных ресурсов. Хотя теоретически вы можете использовать столько
, сколько хотите, проверьте наличие проблем с производительностью.
Этот элемент включает глобальные атрибуты.
-
разрешить
Указывает политику разрешений для
Примечание: Политика разрешений, указанная атрибутом
allow
, реализует дополнительное ограничение поверх политики, указанной вЗаголовок Permissions-Policy
. Это не заменяет его.-
разрешить полный экран
Установите значение
, еслиrequestFullscreen()
.Примечание: Этот атрибут считается устаревшим атрибутом и переопределен как
allow="fullscreen"
.-
разрешитьплатежныйзапрос
Expect behavior to change in the future.»> Экспериментальный Установите значение
true
, если необходимо разрешить кросс-происхождениеПримечание: Этот атрибут считается устаревшим атрибутом и переопределен как
allow="payment"
.-
без учетных данных
Экспериментальный Нестандартный Установите значение
true
, чтобы сделатьCross-Origin-Embedder-Policy
(COEP) могут быть отменены, поэтому документы с установленным COEP могут встраивать сторонние документы, которые этого не делают. Дополнительные сведения см. в разделе IFrame без учетных данных.-
ксп
Экспериментальный Для встроенного ресурса применяется политика безопасности содержимого. Дополнительные сведения см. в статье
.-
высота
Высота кадра в пикселях CSS. По умолчанию
150
.-
загрузка
Указывает, как браузер должен загружать iframe:
-
нетерпеливый
: немедленно загрузить iframe, независимо от того, находится ли он за пределами видимого окна просмотра (это значение по умолчанию). -
ленивый
: отложить загрузку iframe до тех пор, пока он не достигнет расчетного расстояния от области просмотра, как определено браузером.
-
-
имя
Целевое имя встроенного контекста просмотра. Это можно использовать в атрибуте
target
элементовили
; атрибутformtarget
<кнопка>
элементов; или параметрwindowName
в методеwindow.open()
.-
реферальная политика
Указывает, какой реферер отправлять при получении ресурса фрейма:
-
no-referrer
: ЗаголовокReferer
-
no-referrer-when-downgrade
: заголовокReferer
не будет отправлен источникам без TLS (HTTPS). -
origin
: Отправленный реферер будет ограничен источником ссылающейся страницы: ее схемой, хостом и портом. -
origin-when-cross-origin
: Реферер, отправленный в другие источники, будет ограничен схемой, хостом и портом. Навигации в одном и том же источнике по-прежнему будут включать путь. -
тот же источник
-
strict-origin
: отправляйте источник документа в качестве реферера, только если уровень безопасности протокола остается прежним (HTTPS→HTTPS), но не отправляйте его в менее безопасный пункт назначения (HTTPS→HTTP). -
strict-origin-when-cross-origin
(по умолчанию): отправлять полный URL-адрес при выполнении запроса того же источника, отправлять источник только при неизменном уровне безопасности протокола (HTTPS→HTTPS) и не отправлять заголовок в менее безопасное место назначения (HTTPS→HTTP). unsafe-url
: реферер будет включать в себя источник и путь (но не фрагмент, пароль или имя пользователя). Это значение небезопасно , поскольку оно приводит к утечке источников и путей от ресурсов, защищенных TLS, к небезопасным источникам.
-
-
песочница
Управляет ограничениями, применяемыми к содержимому, встроенному в
-
allow-downloads
: Позволяет загружать файлы через элемент -
разрешить загрузку без активации пользователем
Экспериментальный : Разрешает загрузку без жеста пользователя. -
allow-forms
: Разрешает странице отправлять формы. Если это ключевое слово не используется, форма будет отображаться как обычно, но ее отправка не приведет к проверке ввода, отправке данных на веб-сервер или закрытию диалогового окна. -
allow-modals
: Позволяет странице открывать модальные окна с помощьюWindow.alert()
,Window.confirm()
,Window.print()
иWindow.prompt()
, при открытии<диалог>
разрешено независимо от этого ключевого слова. Это также позволяет странице получатьСобытие BeforeUnloadEvent
. -
allow-orientation-lock
: Позволяет ресурсу блокировать ориентацию экрана. -
allow-pointer-lock
: позволяет странице использовать API блокировки указателя. -
allow-popups
: Разрешить всплывающие окна (например, изWindow.open()
,target="_blank"
,Window. showModalDialog()
). Если это ключевое слово не используется, эта функциональность автоматически завершится ошибкой. -
allow-popups-to-escape-sandbox
: Позволяет документу в песочнице открывать новые окна, не навязывая им флаги песочницы. Это позволит, например, безопасно изолировать стороннюю рекламу, не применяя те же ограничения к странице, на которую ссылается реклама. -
allow-presentation
: Позволяет интеграторам контролировать, может ли iframe запускать сеанс презентации. -
allow-same-origin
: если этот токен не используется, ресурс рассматривается как имеющий особое происхождение, которое всегда не соответствует политике одного и того же происхождения (потенциально блокируя доступ к хранилищу данных/файлам cookie и некоторым API-интерфейсам JavaScript). -
allow-scripts
: Разрешает странице запускать сценарии (но не создавать всплывающие окна). Если это ключевое слово не используется, эта операция не разрешена. -
разрешить доступ к хранилищу при активации пользователем
Экспериментальный : позволяет документу, загруженному в -
allow-top-navigation
: Позволяет ресурсу перемещаться по контексту просмотра верхнего уровня (тому, что называется_top
). -
allow-top-navigation-by-user-activation
: Позволяет ресурсу перемещаться по контексту просмотра верхнего уровня, но только если он инициирован жестом пользователя. -
allow-top-navigation-to-custom-protocols
: Разрешает навигацию по протоколам, отличным отhttp
, встроенным в браузер или зарегистрированным веб-сайтом. Эта функция также активируется ключевым словомallow-popups
илиallow-top-navigation
.
Примечание:
- Если встроенный документ имеет то же происхождение, что и встраиваемая страница, настоятельно не рекомендуется использовать оба
allow-scripts
иallow-same-origin
, так как это позволяет удалить встроенный документ атрибут песочницы, что делает его не более безопасным, чем вообще не использовать атрибут
песочницы.
- Песочница бесполезна, если злоумышленник может отображать содержимое вне изолированного
iframe
— например, если зритель открывает кадр в новой вкладке. Такой контент также должен обслуживаться из отдельного источника , чтобы ограничить возможный ущерб.
-
-
источник
URL-адрес страницы для встраивания. Используйте значение
about:blank
, чтобы внедрить пустую страницу, соответствующую политике того же источника. Также обратите внимание, что программное удаление атрибутаElement.removeAttribute()
) вызывает загрузкуabout:blank
во фрейме в Firefox (начиная с версии 65), браузерах на основе Chromium и Safari/iOS.-
исходный документ
Встроенный HTML-код для встраивания, переопределяющий атрибут
src
. Если браузер не поддерживает атрибутsrcdoc
, он вернется к URL-адресу в атрибутеsrc
.-
ширина
Ширина рамки в пикселях CSS. По умолчанию
300
.
Устаревшие атрибуты
Эти атрибуты устарели и могут больше не поддерживаться всеми пользовательскими агентами. Вы не должны использовать их в новом контенте и пытаться удалить их из существующего контента.
-
выровнять
"> Устаревший Выравнивание этого элемента по отношению к окружающему контексту.
-
рамка
Устаревший Значение
1
(по умолчанию) рисует рамку вокруг этого кадра. Значение0
удаляет границу вокруг этого фрейма, но вместо этого вы должны использовать свойство CSSborder
для управления границами-
длинное описание
Устаревший URL-адрес длинного описания содержимого фрейма. Из-за широко распространенного неправильного использования это бесполезно для невизуальных браузеров.
-
высота поля
Устаревший Расстояние в пикселях между содержимым фрейма и его верхней и нижней границами.
-
ширина поля
Устаревший Расстояние в пикселях между содержимым фрейма и его левой и правой границами.
-
прокрутка
Устаревший Указывает, когда браузер должен предоставить полосу прокрутки для фрейма:
-
авто
: Только когда содержимое фрейма превышает его размеры. -
да
: Всегда показывать полосу прокрутки. -
нет
: Никогда не показывать полосу прокрутки.
-
Встроенные фреймы, такие как элементы
, включены в псевдомассив window.frames
.
С помощью объекта DOM HTMLIFrameElement
сценарии могут получить доступ к объекту окна
фреймового ресурса через свойство contentWindow
. Свойство contentDocument
ссылается на документ
внутри
, так же, как contentWindow.document
.
Изнутри фрейма скрипт может получить ссылку на свое родительское окно с помощью window.parent
.
Доступ сценария к содержимому фрейма регулируется политикой того же источника. Сценарии не могут получить доступ к большинству свойств в других объектах окна
, если сценарий был загружен из другого источника, включая сценарии внутри фрейма, обращающиеся к родителю фрейма. Связь между источниками может быть достигнута с использованием Окно.postMessage()
.
В качестве замененного элемента положение, выравнивание и масштабирование встроенного документа в пределах блока элемента
можно настроить с помощью свойств object-position
и object-fit
.