Тег создает плавающий фрейм, который находится внутри обычного документа, он позволяет загружать в область заданных размеров любые другие независимые документы.
Тег
Синтаксис
Атрибуты
align Определяет как фрейм будет выравниваться по краю, а также способ обтекания его текстом. allowtransparency Устанавливает прозрачный фон фрейма, через который виден фон страницы. frameborder Устанавливает, отображать границу вокруг фрейма или нет. height Высота фрейма. hspace Горизонтальный отступ от фрейма до окружающего контента. marginheight Отступ сверху и снизу от содержания до границы фрейма. marginwidth Отступ слева и справа от содержания до границы фрейма. name Имя фрейма. sandbox Позволяет задать ряд ограничений на контент загружаемый во фрейме. scrolling Способ отображения полосы прокрутки во фрейме. seamless Определяет, что содержимое фрейма должно отображаться так, словно оно является частью документа. src Путь к файлу, содержимое которого будет загружаться во фрейм. srcdoc Хранит содержимое фрейма непосредственно в атрибуте. vspace Вертикальный отступ от фрейма до окружающего контента. width Ширина фрейма.
Также для этого тега доступны универсальные атрибуты и события.
Закрывающий тег
HTML5 IE Cr Op Sa Fx
Тег IFRAMEВаш браузер не поддерживает плавающие фреймы!
Как вставить iframe в html
Мы встроили одну страницу в другую страницу, чтобы ты смотрел страницу пока смотришь страницу.
Время чтения: меньше 5 мин
Открыть/закрыть навигацию по статье
Обновлено 8 сентября 2022
Кратко
Скопировать ссылку «Кратко» Скопировано
— это контейнер, который позволяет вставить любой HTML-документ из другого источника. Часто этот документ интерактивный — например, карта, видео или пост из соцсети.
Этот контейнер обычно называют фреймом. Внешний вид фрейма и его положение на странице можно задать через CSS.
Пример
Скопировать ссылку «Пример» Скопировано
С помощью такого нехитрого кода мы можем встроить карту размером 560 на 400 пикселей на любую страницу:
можно представить как «окно» или фрейм, через которое на вашей странице можно увидеть любое содержимое с других сайтов. Это значит, что если карту, видео, пост или другой элемент удалят с оригинального сайта, он пропадёт и с вашей страницы. Останется только пустое место или надпись вроде «Контент недоступен».
Встраивать файлы можно либо по ссылке с помощью атрибута src , либо целиком HTML-код файла с помощью srcdoc .
Как пишется
Скопировать ссылку «Как пишется» Скопировано
Часто сервисы, из которых мы хотим что-то встроить (карты, посты и тому подобное), сами могут сгенерировать вам . Его останется только добавить в свой код.
Контейнер . . . < / iframe>нужно всегда закрывать.
Атрибуты
Скопировать ссылку «Атрибуты» Скопировано
src — URL-адрес файла, который вы встраиваете.
srcdoc — позволяет встроить HTML-код целиком, так что браузеру не придётся подгружать что-то по внешней ссылке. Если используется этот атрибут, то ссылка src игнорируется.
sandbox — ограничивает определённые действия и функции встраиваемого документа. Если просто указать атрибут sandbox , то он применит сразу все возможные ограничения. Либо можно указать нужные ограничения в любом порядке через пробел:
Возможные значения атрибута sandbox
allow — forms — позволяет отправлять формы внутри .
allow — modals — позволяет открывать модальные окна, которые мы все так не любим: вроде «Оставьте свой имейл» или «Не уходите так быстро! У вас товар в корзине». Обычно эти окна не дают пользоваться сайтом, пока их не закроешь.
allow — orientation — lock — позволяет фиксировать горизонтальное или вертикальное положение экрана.
allow — pointer — lock — позволяет пользователю управлять содержимым с помощью курсора через Pointer Lock API.
allow — popups — разрешает показ всплывающих окон, вызванных с помощью window . open ( ) , target = » _ blank» или show Modal Dialog ( ) .
allow — popups — to — escape — sandbox — позволяет содержимому фрейма открывать новые окна. С этим параметром у таких окон не будет тех ограничений, которые есть у с атрибутом sandbox .
allow — presentation — разрешает использовать Presentation API.
allow — same — origin — контент из загружается по тем же правилам и с теми же ограничениями, что и страница, на которой он находится.
allow — scripts — позволяет загружать скрипты. При этом всплывающие окна будут запрещены.
allow — top — navigation — позволяет открывать ссылки, которые есть в , в том же окне, в которое встроен фрейм.
allow — top — navigation — by — user — activation — позволяет контенту из фрейма управлять страницей, на которой он находится. Но только по инициативе пользователя.
name — имя фрейма. Пригодится, чтобы создать ссылку, по которой новая страница будет открываться в нужном фрейме.
Подсказки
Скопировать ссылку «Подсказки» Скопировано
Атрибут sandbox будет игнорироваться, если использовать одновременно значения allow — scripts и allow — same — origin и если исходная страница и на ней загружаются из одного и того же источника.
Помните, что — этот как будто ещё одна страница, которая загружается внутри вашей страницы. Содержимое фрейма может загружаться дольше, чем ваш сайт.
В стоит добавить атрибут title на случай, если пользователь не может увидеть страницу и использует инструмент чтения с экрана. Например, так:
iframetitle="Страница в Википедии о лемурах"src="https://ru.wikipedia.org/wiki/Обыкновенные_лемуры">iframe>
Я редко использую . Только когда надо, например, встроить видео с YouTube.
Почти всегда лучше настроить заголовок cross — origin (это делается на уровне сервера) так, чтобы сторонние сайты не могли встраивать к себе ваш сайт как фрейм — это часто используется для всяких махинаций.
Как установить frame, iframe на сайт
Фрэймы позволяют легко отображать на вашем сайте информацию с других веб ресурсов, например, погоду, курс валюты или весь сайт. Это бывает незаменимо для организации сложных сайтов или веб программ.
iframe
В современной верстке на html5 используется тег iframe. Сегодня он поддерживается практически всеми браузерами. Частым примером его использования является YouTube, где чтобы поделиться видеороликом используется iframe код.
Задать его на сайте очень просто:
Как видите, достаточно указать лишь ссылку на источник, с которого будет браться информация. За счет атрибутов width и height мы задаем область фрэйма, а frameborder отключает рамку вокруг него. Если высота фрэйма недостаточна для отображения всего содержимого, то появится полоса прокрутки.
На одной странице можно указывать множество таких фрэймов. Однако, с точки зрения поисковой оптимизации фрэймами лучше не увлекаться.
frame
Второй тип фрэймов является предшественником iframe и работает на тегах frameset (это уже устаревающий вариант). Для организации таких фрэймов создайте отдельную страницу и пропишите следующий код:
Важной особенностью работы таких фрэймах является отсутствие тегов и на странице. Здесь мы видим, что подключаются сразу два сайта внутри frameset. В нем rows означает, что фрэймы будут распологаться друг за другом в строковом виде (если поставить cols — то стобиками). 20%,80% — первый фрэйм займет 20% всего пространства, а второй 80%. Если поставить *,* — то пространство поделится поровну.
iFrame
Тег iFrame — элемент HTML, позволяющий встраивать на веб-страницу документы, видео и интерактивные медиафайлы и прочие части содержимого из других источников.
Освойте профессию «Frontend-разработчик»
Это один из старейших HTML-элементов: впервые его поддержка была включена в браузер Microsoft Internet Explorer в 1997 году. Название элемента происходит от английского выражения “inline frame”, что означает «встроенный кадр». Именно с помощью iFrame встраивают в страницы видео с YouTube и треки SoundCloud.
Тег iFrame поддерживают стандарты HTML5.
Зачем нужен iFrame
Фронтенд-разработчики используют элемент для встраивания в страницы HTML-документов, которые, как правило, расположены на других сайтах. Это статические страницы, виджеты, апплеты, формы, видеоролики. Возможность использования iFrame предусмотрена во многих конструкторах сайтов, например в Google Sites.
Использование іFrame экономит время разработчика и упрощает хранение мультимедийных файлов: вместо того чтобы создавать видеоплеер с нуля и размещать видеоматериалы на собственном хостинге, можно загрузить все ролики на YouTube-канал и добавить их на страницу с помощью фреймов.
Профессия / 9 месяцев
Frontend-разработчик
Создавайте интерфейсы сервисов, которыми пользуются все
Пример использования іFrame
Встроить страницу с другого сайта очень просто:
В результате в HTML-документе появится квадрат, в который встроена страница курса.
Использование фрейма позволяет разделить HTML, CSS и JavaScript страницы и встраиваемого документа. Однако в некоторых случаях встраиваемый документ может оказывать определенное влияние на нашу страницу, например вызовет появление всплывающих окон, уведомлений или будет автоматически проигрывать видео. Рассмотрим, как контролировать поведение фреймов.
Контроль и безопасность
По умолчанию область встраивания фрейма окружается рамкой. Если она не нужна, используют атрибут style. В этом случае код для отображения iFrame без рамки будет иметь такой вид:
Для настройки поведения iFrame используют следующие атрибуты.
src=» https://skillfactory.ru/web-developer/» — задает источник документа.
srcdoc=»
Курс веб-разработки
»
— устанавливает содержимое фрейма, обычно используется с атрибутами sandbox и seamless.
При одновременном использовании src и srcdoc браузер будет игнорировать src.
» src=»nosrc.html»>
height=»500px» — устанавливает высоту фрейма в пикселях.
width=»500px» — задает ширину элемента iFrame в пикселях.
name=»my-iframe» — устанавливает имя для фрейма, используется в атрибуте target элементов , , . Также применяется в атрибуте formtarget элементов и и в параметре windowName метода window.open().
allow=»fullscreen» — если значение установлено на true, фрейм активирует полноэкранный режим.
referrerpolicy — определяет, какая информация будет отправлена во время загрузки фрейма. Подробное описание значений этого атрибута поможет разработчику выбрать максимально безопасный вариант.
loading — определяет, как браузер будет загружать фрейм: сразу же (eager) или когда пользователь прокрутит страницу до фактической области расположения фрейма (lazy).
sandbox, «песочница», также имеет большой список значений. Использование атрибута позволяет разработчику полностью контролировать поведение фрейма: разрешать или запрещать изменение ориентации экрана, отправку форм, запуск скриптов, всплывающие окна, закачку файлов и так далее.
Станьте Frontend-разработчиком и создавайте интерфейсы сервисов, которыми пользуются все
Преимущества и недостатки
Правильное использование элементов iFrame оживляет страницы сайта и ускоряет разработку развлекательных проектов. С помощью фрейма легко реализовать рекламный блок на сайте, вставить трейлер фильма, добавить текстовый редактор, карту или форму. Но у фреймов есть ряд серьезных недостатков.
Злоупотребление элементами iFrame перегружает память — ноутбук или смартфон пользователя могут зависать. По этой причине не стоит, например, создавать портфолио, в котором будут несколько десятков фреймов с атрибутом eager для демонстрации всех лендингов, разработанных автором.
Включение фреймов в адаптивный дизайн требует от разработчика применения одного из известных решений:
оборачивания элементов iFrame в с определенными CSS-свойствами;
установления соотношения сторон с помощью CSS;
использования готовой библиотеки iFrame Resizer.
Разработчик добавляет контент, который не может контролировать. Встраивание трейлера, расположенного на YouTube, или трека, загруженного на SoundCloud, не представляет для сайта опасности. Но если встраивается контент с менее надежной платформы, важно изучить тонкости атрибута sandbox.
Боты не учитывают содержимое фреймов как часть контента сайта.
Встраивание мультимедийного контента снижает показатели пользовательского опыта, если посетитель переходит для просмотра на источник контента. Если трейлеры фильмов и обучающие видео находятся непосредственно на сайте, показатели пользовательской активности помогут в продвижении ресурса.
Отношение поисковых роботов к iFrame
Одно из самых популярных заблуждений в отношении iFrame гласит, что фреймы плохо влияют на индексацию сайта в поисковых системах. В течение нескольких лет после появления элемента iFrame, действительно, поисковые боты не видели разницы между содержимым фреймов и собственным контентом страницы. Но это уже давно не так: веб-краулеры теперь считают, что фреймы относятся к тому сайту, на котором расположены исходные HTML-документы.
Проблемы дублирования контента не существует, поэтому фреймы, подгружающие контент из доверенных источников, сами по себе никак не влияют на позицию сайта в поисковой выдаче — ни отрицательно, ни положительно. Однако, если размещать увлекательные материалы непосредственно на своем сайте, как уже было отмечено выше, это положительно скажется на продвижении.
В то же время использование контента из ненадежных источников может оказать негативное воздействие на отношение поисковиков сайтов. К примеру, если сайты-источники размещают нелегальный контент или материалы для взрослых, санкции поисковых систем не заставят себя ждать. По этой причине к подгрузке материалов из сторонних источников следует подходить осторожно, отдавая предпочтение самым надежным платформам.
Тег iFrame не следует путать с устаревшими элементами frame и frameset, которые не поддерживаются в HTML5. Элемент iFrame предоставляет разработчику несколько полезных возможностей, но его использование требует опыта и взвешенного подхода.
Frontend-разработчик
Научитесь создавать удобные и эффектные сайты, сервисы и приложения, которые нужны всем. Сегодня профессия на пике актуальности: в России 9000+ вакансий, где требуется знание JavaScript.