Прозрачный фон Google App Script с HtmlService

Я использую скрипт приложений Google для сайта Google и могу легко создать прозрачный фон с помощью UiApp.createApplication().setStyleAttribute("background","transparent").

Теперь я пытаюсь создать скрипт с помощью HtmlService.createHtmlOutput(), но не могу понять, как сделать фон приложения прозрачным.

есть идеи?


person Piotr    schedule 11.05.2013    source источник


Ответы (1)


Если фон вашего сайта является темой, я не могу найти способ сопоставить фон гаджета скрипта приложений с этой темой. Но если фон сайта однотонный, есть способ сопоставить гаджет с HTML-сервисом с цветом сайта.

Вы должны установить цвет фона службы HTML на тот же цвет, что и страница Сайтов. Цвет фона службы HTML уже установлен на прозрачный. Это значение по умолчанию. Фрейм Сайтов, в котором находится код скрипта приложений, имеет белый цвет фона. Я не могу найти способ изменить это. Служба Google Apps Script HTML по умолчанию имеет прозрачный фон, поскольку HTML по умолчанию имеет прозрачный фон. Вот подробное объяснение того, что вы должны сделать, чтобы гаджет Apps Script был того же цвета, что и ваш сайт:

Удалить границу в кадре скрипта Sites Apps

Удалить фрейм, если требуется

Если вы не хотите, чтобы рамка отображала рамку, снимите флажок «Включить рамку вокруг гаджета Apps Script».

Как написать HTML-разметку

HTML-код в основном файле HTML-службы сценариев приложений должен выглядеть следующим образом:

<section style="background:gray; height:100vh">
<div>
  Some Text Here
</div>
</section>

Установите для background тот же цвет, что и на вашем сайте. Используйте тег <section> и установите высоту height:100vh. Это гарантирует, что весь кадр будет заполнен фоновым цветом. Все должно быть заключено в этот тег <section> с фоном, установленным на тот же цвет, что и ваш сайт, и высотой, установленной на 100 процентов по вертикали. (100вх)

Вот изображение, показывающее, что фон гаджета Apps Script установлен в серый цвет, а сайт — в синий, чтобы показать вам, каким будет конечный результат. Если бы я установил синий фон гаджета «Сценарий приложений», вы бы не увидели, где начинается или заканчивается сценарий приложений.

Конечный результат

Если ваш сайт имеет Theme, цвет фона будет установлен на Theme. Поэтому вам, возможно, придется поэкспериментировать с цветами, чтобы получить тот, который соответствует Theme. Если цвет фона сайта вручную установлен в разделе Themes, Colors, and Fonts страницы Manage Site, вы можете использовать палитру цветов, чтобы получить шестнадцатеричное значение настройки цвета.

Управление темами сайта

ПРИМЕЧАНИЕ:

Есть способ установить цвет фона гаджетов:

Гаджеты цвета фона

Но служба HTML переопределяет его. Если вы установите цвет фона гаджета, при загрузке страницы вы сначала увидите цвет фона, который вы установили на странице Manage Site, а затем цвет изменится на цвет фона HTML. Я попытался сделать фон службы HTML прозрачным, а гаджет — цветным, но это не сработало.

person Alan Wells    schedule 25.04.2014
comment
+1 Спасибо за этот полезный ответ. Я впервые использую Сайты и GAS, и подобные проблемы очень раздражают. Например, невозможность использовать @font-face с HTMLService. Вы случайно не нашли способ изменить фон белого iframe? - person Xavi López; 29.08.2014
comment
Спасибо за ответ. Я не пользуюсь Сайтами Google, поэтому мне нужно взглянуть на них. Но вы всегда можете задать вопрос. Я использую бесплатные услуги App Engine. Недостатком является то, что бесплатный сервис App Engine не поддерживает HTTPS, а Сайты обслуживаются через HTTPS. Но HTML-служба Apps Script обслуживается через HTTPS, поэтому я использую ее, когда мне нужен HTTPS. - person Alan Wells; 29.08.2014