<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.appian.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>KB-1080 Embedded interface overrides site style</title><link>https://community.appian.com/support/w/kb/304/kb-1080-embedded-interface-overrides-site-style</link><description /><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>KB-1080 Embedded interface overrides site style</title><link>https://community.appian.com/support/w/kb/304/kb-1080-embedded-interface-overrides-site-style</link><pubDate>Mon, 30 Jul 2018 03:56:43 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:2c55cd15-ff95-430d-901b-c833fbb2149b</guid><dc:creator>Parmida Borhani</dc:creator><comments>https://community.appian.com/support/w/kb/304/kb-1080-embedded-interface-overrides-site-style#comments</comments><description>Current Revision posted to Appian Knowledge Base by Parmida Borhani on 7/30/2018 3:56:43 AM&lt;br /&gt;
&lt;div class="row content_container"&gt;
&lt;h2 id="symptoms"&gt;Symptoms&lt;/h2&gt;
&lt;p&gt;When using an embedded interface in an external site where you do not control the style source (CSS), the styling on the site gets modified and causes undesirable behavior.&lt;/p&gt;
&lt;p&gt;Users may experience one or more of the following symptoms using SharePoint specifically:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The font size changes in the main site containing the embedded interface.&lt;/li&gt;
&lt;li&gt;Some links change color.&lt;/li&gt;
&lt;li&gt;The spaces between words change.&lt;/li&gt;
&lt;li&gt;In IE9, the SharePoint menu is removed&lt;/li&gt;
&lt;li&gt;In IE10, the interface will not load after a refresh&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Other sites may cause different, undesirable behavior.&lt;/p&gt;
&lt;h2 id="cause"&gt;Cause&lt;/h2&gt;
&lt;p&gt;The site hosting the embedded interface is not properly isolating the input HTML/JS/CSS.&lt;/p&gt;
&lt;h2 id="action"&gt;Action&lt;/h2&gt;
&lt;p&gt;Isolate the embedded interface by wrapping the HTML/JS/CSS in an iframe.&lt;/p&gt;
&lt;p&gt;An example of an iframe is as follows:&lt;/p&gt;
&lt;pre&gt;&amp;lt;pre&amp;gt;
&amp;lt;!DOCTYPE html&amp;gt;
&amp;lt;html&amp;gt;
   &amp;lt;head&amp;gt;
      &amp;lt;script&amp;gt;
         function render() {
         var scriptFrame = document.createElement(&amp;#39;iframe&amp;#39;);
         scriptFrame.id = &amp;quot;embedded-iframe&amp;quot;;
         scriptFrame.src = &amp;#39;javascript:&amp;quot;&amp;quot;&amp;#39;;
         scriptFrame.style.width = &amp;quot;100%&amp;quot;;
         scriptFrame.style.height = &amp;quot;750px&amp;quot;;
         content.appendChild(scriptFrame);
         
         frameDoc = scriptFrame.contentDocument;
         if (!frameDoc) {
         frameDoc = scriptFrame.contentWindow.document;
         }
         
         var html = &amp;#39;&amp;lt;html&amp;gt;\n&amp;lt;head&amp;gt;&amp;lt;/head&amp;gt;\n&amp;lt;body style=&amp;#39;height: 725px;&amp;#39;&amp;gt;\n&amp;lt;script src=&amp;#39;YOUR_APPIAN_URL/suite/tempo/tempo.nocache.js&amp;#39;&amp;#39; + &amp;#39;&amp;gt;&amp;lt;/scrip&amp;#39; + &amp;#39;t&amp;gt;\n&amp;lt;appian-task taskId=&amp;#39;PUT_YOUR_APPIAN_TASK_ID_HERE&amp;#39; /&amp;gt;\n&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&amp;#39;;
         
         frameDoc.open();
         frameDoc.write(html);
         frameDoc.close();
         }
      &amp;lt;/script&amp;gt;
   &amp;lt;/head&amp;gt;
   &amp;lt;body&amp;gt;
      &amp;lt;div id=&amp;#39;content&amp;#39; style=&amp;#39;max-width: 1200px;&amp;#39; /&amp;gt;
      &amp;lt;script&amp;gt;
         render();
      &amp;lt;/script&amp;gt;
   &amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; The height of the iframe needs to be static. You can change the size in &lt;code&gt;scriptFrame.style.height&lt;/code&gt; and in the HTML variable. The value in the HTML variable needs to be smaller than what is specified for &lt;code&gt;scriptFrame.style.height&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id="affected-versions"&gt;Affected Versions&lt;/h2&gt;
&lt;p&gt;This article applies to all versions of Appian.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Last Reviewed: February 2017&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;

&lt;div style="font-size: 90%;"&gt;Tags: embedded interfaces, third-party, integration, application design&lt;/div&gt;
</description></item><item><title>KB-1080 Embedded interface overrides site style</title><link>https://community.appian.com/support/w/kb/304/kb-1080-embedded-interface-overrides-site-style/revision/1</link><pubDate>Wed, 22 Feb 2017 21:02:12 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:2c55cd15-ff95-430d-901b-c833fbb2149b</guid><dc:creator>Nick Vigilante</dc:creator><comments>https://community.appian.com/support/w/kb/304/kb-1080-embedded-interface-overrides-site-style#comments</comments><description>Revision 1 posted to Appian Knowledge Base by Nick Vigilante on 2/22/2017 9:02:12 PM&lt;br /&gt;
&lt;div class="row content_container"&gt;
&lt;h2 id="symptoms"&gt;Symptoms&lt;/h2&gt;
&lt;p&gt;When using an embedded interface in an external site where you do not control the style source (CSS), the styling on the site gets modified and causes undesirable behavior.&lt;/p&gt;
&lt;p&gt;Users may experience one or more of the following symptoms using SharePoint specifically:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The font size changes in the main site containing the embedded interface.&lt;/li&gt;
&lt;li&gt;Some links change color.&lt;/li&gt;
&lt;li&gt;The spaces between words change.&lt;/li&gt;
&lt;li&gt;In IE9, the SharePoint menu is removed&lt;/li&gt;
&lt;li&gt;In IE10, the interface will not load after a refresh&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Other sites may cause different, undesirable behavior.&lt;/p&gt;
&lt;h2 id="cause"&gt;Cause&lt;/h2&gt;
&lt;p&gt;The site hosting the embedded interface is not properly isolating the input HTML/JS/CSS.&lt;/p&gt;
&lt;h2 id="action"&gt;Action&lt;/h2&gt;
&lt;p&gt;Isolate the embedded interface by wrapping the HTML/JS/CSS in an iframe.&lt;/p&gt;
&lt;p&gt;An example of an iframe is as follows:&lt;/p&gt;
&lt;pre&gt;&amp;lt;pre&amp;gt;
&amp;lt;!DOCTYPE html&amp;gt;
&amp;lt;html&amp;gt;
   &amp;lt;head&amp;gt;
      &amp;lt;script&amp;gt;
         function render() {
         var scriptFrame = document.createElement(&amp;#39;iframe&amp;#39;);
         scriptFrame.id = &amp;quot;embedded-iframe&amp;quot;;
         scriptFrame.src = &amp;#39;javascript:&amp;quot;&amp;quot;&amp;#39;;
         scriptFrame.style.width = &amp;quot;100%&amp;quot;;
         scriptFrame.style.height = &amp;quot;750px&amp;quot;;
         content.appendChild(scriptFrame);
         
         frameDoc = scriptFrame.contentDocument;
         if (!frameDoc) {
         frameDoc = scriptFrame.contentWindow.document;
         }
         
         var html = &amp;#39;&amp;lt;html&amp;gt;\n&amp;lt;head&amp;gt;&amp;lt;/head&amp;gt;\n&amp;lt;body style=&amp;quot;height: 725px;&amp;quot;&amp;gt;\n&amp;lt;script src=&amp;quot;YOUR_APPIAN_URL/suite/tempo/tempo.nocache.js&amp;quot;&amp;#39; + &amp;#39;&amp;gt;&amp;lt;/scrip&amp;#39; + &amp;#39;t&amp;gt;\n&amp;lt;appian-task taskId=&amp;quot;PUT_YOUR_APPIAN_TASK_ID_HERE&amp;quot; /&amp;gt;\n&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&amp;#39;;
         
         frameDoc.open();
         frameDoc.write(html);
         frameDoc.close();
         }
      &amp;lt;/script&amp;gt;
   &amp;lt;/head&amp;gt;
   &amp;lt;body&amp;gt;
      &amp;lt;div id=&amp;quot;content&amp;quot; style=&amp;quot;max-width: 1200px;&amp;quot; /&amp;gt;
      &amp;lt;script&amp;gt;
         render();
      &amp;lt;/script&amp;gt;
   &amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; The height of the iframe needs to be static. You can change the size in &lt;code&gt;scriptFrame.style.height&lt;/code&gt; and in the HTML variable. The value in the HTML variable needs to be smaller than what is specified for &lt;code&gt;scriptFrame.style.height&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id="affected-versions"&gt;Affected Versions&lt;/h2&gt;
&lt;p&gt;This article applies to all versions of Appian.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Last Reviewed: February 2017&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;

&lt;div style="font-size: 90%;"&gt;Tags: embedded interfaces, third-party&lt;/div&gt;
</description></item></channel></rss>