Возможно ли создать iFrame

#html #css #iframe #styling #servicenow

#HTML #css #iframe #оформление #servicenow

Вопрос:

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

Спасибо!

Ответ №1:

Чтобы оформить iframe, вам нужно будет иметь доступ ко всему, что его генерирует, точно так же, как и к любому другому веб-документу.

Iframe — это другой (дочерний) документ, загружаемый внутри выделенной области вашего родительского документа.

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

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

Также, пожалуйста, обратите внимание, что фреймов iframe следует избегать по соображениям доступности, поскольку многие портативные устройства отображают их неудобно, а некоторые вообще не отображают содержимое iframe.

Ответ №2:

Одно-единственное правило, позволяющее создавать стиль вашего iframe или каким-либо образом контролировать его, — это

Ваша веб-страница и iframe должны находиться в одном домене

Иначе вы никак не сможете это сделать. Браузер ограничивает вас в этом. Это стандарт безопасности, которому следуют все браузеры.

Комментарии:

1. итак, если это тот же домен, я могу просто оформить его, как обычно?

2. Да .. это должно быть прямолинейно

3. Пожалуйста, обратите внимание, что вам все еще нужен доступ к содержимому iframe. Вам нужно установить domain как для родительского, так и для дочернего: document.domain = "yourdomain"; . Это должно быть сделано на этапе загрузки документа. После этого вы сможете получить доступ к своему документу iframe через javascript из родительского (так что вы можете добавить к нему таблицы стилей из родительского).