Атрибут sandbox позволяет установить ряд ограничений на контент, загружаемый во фрейме, к примеру, блокировать формы и скрипты. Это позволяет повысить безопасность текущего документа, особенно в том случае, когда во фрейм загружается документ из непроверенного источника.
Синтаксис
<iframe src="URL" sandbox="allow-same-origin || allow-top-navigation ||
allow-forms || allow-scripts"></iframe>
Значения
- allow-forms
- Позволяет содержимому фрейма отправлять формы.
- allow-modals
- Разрешает открытие модальных окон, вроде тех, которые делаются с помощью функции alert в JavaScript.
- allow-orientation-lock
- Позволяет отключать возможность блокировки экрана.
- allow-pointer-lock
- Позволяет фрейму использовать Pointer Lock API.
- allow-popups
- Разрешает всплывающие окна (такие как window.open, target="_blank", showModalDialog).
- allow-presentation
- Разрешает фрейму использовать Presentation API.
- allow-same-origin
- Разрешает загружать содержание фрейма, воспринимая его из того же источника, что и родительский документ. Может использоваться для безопасного открытия контента, блокируя при этом всплывающие окна.
- allow-scripts
- Разрешает запуск и выполнение скриптов. Создание всплывающих окон при этом запрещено.
- allow-top-navigation
- Позволяет открывать ссылки фрейма в родительском документе.
Допустимо писать несколько значений в любом порядке через пробел. Если указано пустое значение, то устанавливаются все возможные ограничения.
При одновременном использовании значений allow-scripts и allow-same-origin, когда исходный и загружаемый документ одного происхождения, атрибут sandbox игнорируется.
Значение по умолчанию
Нет.
Пример
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8">
<title>iframe, атрибут sandbox</title>
</head>
<body>
<iframe src="page/hello.html" sandbox></iframe>
</body>
</html>
В данном примере во фрейме открывается документ, который через скрипт выводит сообщение.
Добавление атрибута sandbox блокирует действие скрипта.
Браузеры
Браузеры
В таблице браузеров применяются следующие обозначения.
- — элемент полностью поддерживается браузером;
- — элемент браузером не воспринимается и игнорируется;
- — при работе возможно появление различных ошибок, либо элемент поддерживается с оговорками.
Число указывает версию браузреа, начиная с которой элемент поддерживается.