Тег | HTML справочник

Поддержка браузерами

Описание

HTML тег <iframe> определяет встроенную область (рамку), которая может отображать содержимое отдельно взятого документа или даже другого веб-сайта в ограниченном пространстве на текущей веб-странице. Содержимое внутри области существует независимо от окружающей страницы. Две страницы: родительская и дочерняя, отображаемая в рамке, могут взаимодействовать друг с другом через JavaScript или серверный язык программирования.

Атрибут src указывает URL-адрес страницы для загрузки во встроенную область, но сам элемент <iframe> также может содержать текст или разметку в качестве резервного содержимого для отображения в браузерах, не поддерживающих этот элемент (например: очень старые браузеры, текстовые браузеры и так далее).


<iframe src="news.html">
  <p>Извините, но ваш браузер не может отобразить содержимое фрейма, но
    вы можете сами перейти на <a href="news. html">страницу с новостями</a>.
  </p>
</iframe>

Любые CSS стили, применяемые к родительскому элементу, не будут применяться к содержимому встроенной области, также как стили, примененные к встроенному содержимому, не будут распространяться на родительский элемент.

Можно указать размер для встроенной области с помощью необязательных атрибутов width и height или с помощью CSS. Обычно размер по умолчанию равен 300px в ширину и 150px в высоту, но, в зависимости от браузера, размер может быть иным. Большинство браузеров по умолчанию отображают содержимое элемента <iframe> с узкой рамкой, которую можно изменить или удалить с помощью CSS свойства border.

Если содержимое тега <iframe> превышает размеры элемента, то появляются полосы прокрутки, позволяющие пользователям прокручивать содержимое во встроенной области. Вы можете отключить полосы прокрутки с помощью CSS объявления overflow: hidden, но в этом случае у пользователя не будет возможности увидеть скрытое содержимое.

Атрибуты

height:
Указывает высоту элемента в пикселях. Пример »
name:
Определяет имя для элемента.

Значение этого атрибута может быть использовано для ссылки на элемент в JavaScript, либо в качестве значения для атрибута target элемента <a> или <form>, либо в качестве значения для атрибута formtarget элемента <button> или <input>. Пример »

sandbox:
Применяет набор ограничений на содержимое встроенной области в качестве меры безопасности в случае, если в ней отображается ненадежный веб-сайт.

Значением атрибута может быть либо пустая строка (sandbox=»»), это значение указывает, что применяются все ограничения, либо список определенных значений, разделенных пробелами, которые будут снимать конкретные ограничения:

  • «» — применяет все ограничения, снимаемые перечисленными ниже значениями.
    Таким образом ограничивая содержимое фрейма влиять на родительский элемент, изолируя страницу, отображаемую во фрейме, в виртуальной песочнице, поэтому любой вредоносный код не сможет нанести вред родительской странице, сайту или компьютеру пользователя.
  • allow-forms — разрешает отправку данных форм.
  • allow-same-origin — указывает, что информация представленная в iframe имеет тот же источник, что и информация представленная в содержащем его документе.
  • allow-scripts — разрешает выполнение сценариев (исключая всплывающие окна).
  • allow-top-navigation — разрешает использовать ссылки внутри содержимого iframe для перемещения по содержащему его документу.

Примечание: атрибут sandbox не поддерживается в IE9 и более ранних версиях, и в Opera.

seamless:
Указывает, что содержимое iframe должно выглядеть так, словно оно является частью документа (без рамки и полос прокрутки). Возможные значения логического атрибута seamless:

<iframe seamless>
<iframe seamless="">
<iframe seamless="seamless">

Примечание: атрибут seamless поддерживается только в Chrome и Safari6+.

src:
Указывает адрес документа, который будет отображен во встроенном фрейме. Пример »
width:
Указывает ширину элемента в пикселях. Пример »

Тег <iframe> так же поддерживает Глобальные атрибуты и События

Стиль по умолчанию


iframe:focus {
    outline: none;
}

iframe[seamless] {
    display: block;
}  

Пример


<iframe src="www.puzzleweb.ru/html/iframe.html">
  Ваш браузер не поддерживает iframe!
</iframe> 

Результат данного примера в окне браузера:

Тег | HTML справочник

HTML теги

Значение и применение

Тег <iframe> (HTML Inline Frame Element) определяет встроенную в веб-страницу область, которая может отображать содержимое отдельно взятого документа (например, *. pdf), медиа-контента или другого веб-сайта в заданном пространстве. Содержимое внутри области существует независимо от окружающей страницы.

Синтаксис для добавления фрейма:

<iframe src = "URL"> </iframe>, где src атрибут, который определяет местоположение документа или веб-сайта.

Обращаю Ваше внимание, на то что некоторые сайты, например такие как поисковые системы, блокируют возможность размещения страницы сайта во фреймах, либо осуществляют переход по таймеру на свою «реальную» страницу.


Поддержка браузерами

Тег
Chrome

Firefox

Opera

Safari

IExplorer

Edge
<iframe>ДаДаДаДаДаДа

Атрибуты

АтрибутЗначениеОписание
alignleft
right
top
middle
bottom
Не поддерживается в HTML5.
Определяет выравнивание элемента в соответствии с окружающими элементами.
frameborder0
1
Не поддерживается в HTML5.
Указывает, следует ли отображать рамку вокруг элемента.
heightpixelsОпределяет высоту элемента.
longdescURLНе поддерживается в HTML5.
Указывает страницу, содержащую длинное описание содержания элемента.
marginheightpixelsНе поддерживается в HTML5.
Отступ сверху и снизу от содержания до границы фрейма.
marginwidthpixelsНе поддерживается в HTML5.
Указывает отступ слева и справа от содержания до границы фрейма.
nametextЗадаёт имя элемента.
sandboxallow-forms
allow-pointer-lock
allow-popups
allow-same-origin
allow-scripts
allow-top-navigation
Включает дополнительный набор ограничений для содержания в элементе.
scrollingauto
yes
no
Не поддерживается в HTML5.
Указывает, отображать или нет полосы прокрутки в элементе.
srcURLОпределяет адрес документа для встраивания в элемент.
srcdocHTML_codeУказывает HTML-код, который будет показан во фрейме.
widthpixelsОпределяет ширину элемента.

Пример использования

В этом примере мы возьмем в качестве загрузки во фрейм отличный сайт — TinyPng.com, который предоставляет возможность сжимать изображения, предназначенные к загрузке на Ваш сайт. Как правило, удаётся уменьшить размер изображений на 50%, а то и больше, что значительно уменьшает их объем, экономит дисковое пространство и увеличивает скорость загрузки страниц.

<!DOCTYPE html>
<html>
	<head>
		<title>Пример использования элемента <iframe></title>
	</head>
	<body>
		<iframe name = "myframe" width = "665px" height = "265px" src = "https://tinypng.
com"></iframe><br> <!-- в атрибуте src указываем абсолютный адрес сайта, который хотим открыть во фрейме --> <a href = "https://tinypng.com" target = "myframe">TinyPng</a> <!-- указываем, что ссылка откроется во фрейме --> <a href = "moscow.jpg" target = "myframe">Moscow</a> <!-- задаем относительный путь к изображению и имя фрейма, где оно откроется --> <a href = "paris.jpg" target = "myframe">Paris</a> <!-- задаем относительный путь к изображению и имя фрейма, где оно откроется --> <a href = "london.jpg" target = "myframe">London</a> <!-- задаем относительный путь к изображению и имя фрейма, где оно откроется --> </body> </html>

В этом примере мы:

  • Элементом <iframe> создали фрейм, которому атрибутом name задали имя — «myframe», атрибутом width установили ширину фрейма «665px», а атрибутом height высоту фрейма «265px» . В обязательном атрибуте src указали абсолютный адрес сайта, который хотим открыть во фрейме «https://tinypng. com».
  • Разместили четыре ссылки, при клике на которые ссылка открывается непосредственно во фрейме (в значении атрибута target указано имя нашего фрейма — «myframe»). Первая ссылка открывает сайт, загруженный изначально, а остальные три загружают различные изображения, находящиеся в той же папке, что и файл с примером.

Результат нашего примера:

Пример использования фреймов в HTML.

Рассмотрим пример добавления видео с YouTube во фрейм:

<!DOCTYPE html>
<html>
	<head>
		<title>Размещение видео с YouTube</title>
	</head>
	<body>
		<p>Размещение видео с YouTube</p>
		<iframe  width = "320" height = "240" src = "https://www.youtube.com/embed/d9TpRfDdyU0?autoplay=1?loop=1&start=28&color=white">
		</iframe>
	</body>
</html>

В этом примере элементом <iframe> мы разместили фрейм на странице и задали для него ширину 320 пикселей (атрибут width) и высоту 240 пикселей (height). В атрибуте src мы указали путь к странице с видео, указали ID видео (выделен курсивом) и добавили дополнительные параметры плеера YouTube (подробное описание доступно в официальной документации):

  • autoplay = «1» (видео автоматически запускается).
  • loop = «1» (проигрыватель будет воспроизводить видео по кругу, в бесконечном цикле).
  • start = «28» (определяет с какой секунды начнется воспроизведение видео, значение длжно быть положительным целым числом).
  • color = «white» (бегунок просмотренного отмеряет белым цветом, по умолчанию — красным).

Результат нашего примера:

Добавление видео с YouTube во фрейм.

Более подробную информацию о добавлении видео с видео хостинга YouTube вы можете найти на сайте в статье учебника HTML 5 «Размещение видео с видео хостинга YouTube».

Отличия HTML 4.01 от HTML 5

В HTML5 добавлено два новых атрибута, большинство используемых в HTML 4.01 атрибутов было удалено.

Значение CSS по умолчанию

iframe [seamless] {
display: block;
}
iframe:focus {
outline: none;
}

Поддержка глобальных атрибутов

Элемент поддерживает «глобальные атрибуты».

Атрибуты событий

Элемент поддерживает «атрибуты событий».

HTML теги

Использование тега HTML для создания встроенных фреймов: вот как »

В тегах HTML

Раскрытие информации: Ваша поддержка помогает сайту работать! Мы зарабатываем комиссионные за некоторые услуги, которые мы рекомендуем на этой странице. Узнать больше

Элемент
HTML-фреймы устарели в HTML5: вот как сделать их адаптивными
Что делает Использование тега HTML для создания встроенных фреймов: вот как это делает ?

Мощный, но простой в использовании

В старые недобрые времена веб-дизайна было много элементов, висящих вокруг, портящих всем день. Они почти всегда были плохим подходом к дизайну. К счастью, элемент устарел в HTML5, но

Основное различие между

Основное различие между

Видео явно на странице , а не в какой-то отдельной панели где-то еще. Элемент нарушил эту парадигму и позволил документу контролировать окно браузера, разбив его на несколько меньших панелей (фреймов), каждая из которых отображала отдельный документ. (Это было ужасно.) Все остальные различия между и проистекают из этого основного различия.

Не создавать повторно макеты на основе фреймов с помощью iframe

Вам может понадобиться обновить или изменить дизайн старого веб-сайта, созданного с использованием фреймов. И тогда вы можете столкнуться с искушением использовать и дизайн с фиксированной шириной, чтобы воссоздать тот же кошмар с независимыми панелями и подокнами. Затем вы обнаружите, что не можете использовать атрибут target для открытия ссылки в определенном фрейме. То, что должно остановить вас, , но тогда вы можете начать искать решения на JavaScript, и тогда вы перестроите что-то ужасное. Пожалуйста, не делайте этого.

Хорошее (и ужасное) использование

) тегами.

Пример тега HTML

Попробуй сам »

Чтобы установить размер iframe, используйте атрибуты высоты и ширины или используйте CSS. Значения атрибутов по умолчанию задаются в пикселях, но могут быть и в процентах.

Пример тега HTML

Попробуй сам »

По умолчанию iframe окружен рамкой. Чтобы удалить границу, вы можете использовать свойство границы CSS.

Пример тега HTML

Попробуй сам »

Существует новый атрибут загрузки HTML, который позволяет откладывать загрузку изображений и iframe до тех пор, пока они не будут близки к отображению. Для этой функции у WHATWG есть запрос на вытягивание, и она уже является частью Chromium (начиная с версии 76).

Поддерживаемые значения атрибута загрузки включают:

  • «ленивый», который откладывает загрузку до тех пор, пока изображение или iframe не достигнет порогового значения расстояния от области просмотра.