diff --git a/apply.js b/apply.js index cb0b48f1..d6527d41 100644 --- a/apply.js +++ b/apply.js @@ -134,8 +134,18 @@ function applyStyles(styleHash) { } if (Object.keys(g_styleElements).length) { - document.addEventListener("DOMContentLoaded", addDocumentStylesToAllIFrames); - iframeObserver.start(); + // when site response is application/xml Chrome displays our style elements + // under document.documentElement as plain text so we need to move them into HEAD + // (which already is autogenerated at this moment for the xml response) + if (document.head && document.head.firstChild && document.head.firstChild.id == "xml-viewer-style") { + for (var id in g_styleElements) { + document.head.appendChild(document.getElementById(id)); + } + } + document.addEventListener("DOMContentLoaded", function() { + addDocumentStylesToAllIFrames(); + iframeObserver.start(); + }); } if (retiredStyleIds.length) {