Тег | 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> | Да | Да | Да | Да | Да | Да |
Атрибуты
Атрибут | Значение | Описание |
---|---|---|
align | left right top middle | Не поддерживается в HTML5. Определяет выравнивание элемента в соответствии с окружающими элементами. |
frameborder | 0 1 | Не поддерживается в HTML5. Указывает, следует ли отображать рамку вокруг элемента. |
height | pixels | Определяет высоту элемента. |
longdesc | URL | Не поддерживается в HTML5. Указывает страницу, содержащую длинное описание содержания элемента. |
marginheight | pixels | Не поддерживается в HTML5. Отступ сверху и снизу от содержания до границы фрейма. |
marginwidth | pixels | Не поддерживается в HTML5. Указывает отступ слева и справа от содержания до границы фрейма. |
name | text | Задаёт имя элемента. |
sandbox | allow-forms allow-pointer-lock allow-popups allow-same-origin allow-scripts allow-top-navigation | Включает дополнительный набор ограничений для содержания в элементе. |
scrolling | auto yes no | Не поддерживается в HTML5. Указывает, отображать или нет полосы прокрутки в элементе. |
src | URL | Определяет адрес документа для встраивания в элемент. |
srcdoc | HTML_code | Указывает HTML-код, который будет показан во фрейме. |
width | pixels | Определяет ширину элемента. |
Пример использования
В этом примере мы возьмем в качестве загрузки во фрейм отличный сайт — 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 для создания встроенных фреймов: вот как это делает
? - Дисплей
- Блок
Содержание
- 1 Пример кода
- 2 мощные, но легко неправильно использовать
- 2,1 Как
- 3 do do do do не воссоздавать макеты на основе фреймов с помощью iframe
- 4 Хорошее (и плохое) использование
- 5 Поддержка браузером iframe
- 6 Атрибуты iframe
Пример кода
youtube.com/embed/owsfdh5gxyc" frameborder="0" allowfullscreen>
Мощный, но простой в использовании
В старые недобрые времена веб-дизайна было много
элементов, висящих вокруг, портящих всем день. Они почти всегда были плохим подходом к дизайну. К счастью, элемент
устарел в HTML5, но
или «встроенный фрейм» все еще доступен. Это должно было быть устаревшим тоже? Лучше всего просто избегать этого? Есть несколько допустимых применений этого элемента, но вам действительно нужно понять, что это такое и как он работает, чтобы избежать некоторых ловушек, которые были так распространены в темные времена.
Чем
и
похожи и чем они отличаются Оба элемента представляют собой независимый документ HTML. На содержимое документа ссылается атрибут src
каждого элемента, поэтому на самом деле это полностью независимый ресурс, на который ссылается из текущего документа.