Как применить стили CSS к iFrame?

CSS, HTML, Вопросы и ответы
24 февраля 2012

Вопрос

У меня есть простая страница, на которой расположен блок iFrame (для отображения RSS-ссылок). Как я могу применить одинаковые стили CSS к главной странице и iFrame?


Ответ №1

Надо различать 2 разные вещи: стиль блока iframe и стиль страницы, которая встроена в iframe. Вы можете задать стиль блока iframe обычным способом:

<iframe name='iframe1' id="iframe1" src="empty.htm" frameborder="0" border="0" cellspacing="0" style="border-style: none;width: 100%; height: 120px;"></iframe>

Стиль страницы, встроенной в iframe, должен быть задан вставкой стилей именно в эту страницу:

<link type="text/css" rel="Stylesheet" href="Style/simple.css" />

Или же он может быть загружен из родительской страницы на JavaScript:

var cssLink = document.createElement("link") 
cssLink.href = "style.css"; 
cssLink.rel = "stylesheet"; 
cssLink.type = "text/css"; 
frames['frame1'].document.body.appendChild(cssLink);

1 комментарий

  • Ron:

    Имеется iframe на станице html, с интерактивной картой города, с маркерами расположения разных объектов, который выполняет их скрипт (выбора опций поиска) и отображает на web станицe эти отфильтрованные объекты. Потом при нажатии на любой маркер, появляется popup окно (с фото объекта). И при нажатии на ссылку или на фото скрипт переключает отображение данных об объекте из iframe на новую страницу браузера, а мне это не нужно. Пробовал присваивать iframe атрибут sandbox=»allow-scripts» после чего происходит отображение основы карты в окне iframe и индикатора загрузки, но маркеры на карте не отображаются. Вопрос такой, можно ли присвоить iframe какую либо функцию, что бы он железобетонно отключал возможность перехода из данного iframe по всем гиперссылкам из его окна? Думаю проблема сложная, но все таки решаемая.

Добавить комментарий


(обязательно)