Javascript 访问从CDN加载的CSS的样式表规则

Javascript 访问从CDN加载的CSS的样式表规则,javascript,css,svg,Javascript,Css,Svg,我目前正在将浏览器绘制的SVG转换为PNG。为了做到这一点,我将SVG数据包装到一个图像中,将其写入画布,然后使用其数据URI在新窗口中将其作为PNG打开 此外,我需要内联样式信息。为此,我迭代了每个样式表的规则,并检查SVG中是否使用了任何规则。如果使用了它,我将其内联。我从一个学生那里学到了这种方法 这在我的本地机器上运行,它不使用CDN。在我们的生产服务器上,我们使用Cloudfront提供CSS/图像,但是,CSS文件实际上并没有加载到document.styleSheets中,只有一个

我目前正在将浏览器绘制的SVG转换为PNG。为了做到这一点,我将SVG数据包装到一个图像中,将其写入画布,然后使用其数据URI在新窗口中将其作为PNG打开

此外,我需要内联样式信息。为此,我迭代了每个样式表的规则,并检查SVG中是否使用了任何规则。如果使用了它,我将其内联。我从一个学生那里学到了这种方法

这在我的本地机器上运行,它不使用CDN。在我们的生产服务器上,我们使用Cloudfront提供CSS/图像,但是,CSS文件实际上并没有加载到document.styleSheets中,只有一个带有href的占位符指向它们在Cloudfront上的位置

如何访问这些样式表?如果它们在DOM中使用,则它们必须存在于浏览器中的某个位置


谢谢

这早该说了,但谢谢你为我指明了正确的方向史蒂夫·桑德斯。这是我尝试的解释

这种方法不起作用:我编辑了托管我们资产的s3 bucket的CORS设置,以便允许跨源GET请求,然后尝试向cdn发出ajax请求,以获取我需要的css文件。我的浏览器抱怨跨源资源共享,但它不起作用


这种方法确实有效:因为我无法向cdn发出ajax请求,而是向同一来源的web服务器发出ajax请求。虽然从web服务器获取资产并不理想,但它可以工作。

我猜这是一个域问题-尝试查看CORS: