document styleSheets cssRules

时间:2012-06-24 15:00:42

标签: javascript css stylesheet

几天前,我遇到了在网页上获取cssRules数据的问题。

document.styleSheets[i].cssRules

仅适用于具有相同域样式表路径的样式标记和链接标记。

因此,如果我使用来自不同域的样式表,则很难访问这些规则,

或者,如果我从本地文件系统浏览html页面 - 即使从本地文件系统样式表,也无法访问规则,也可以访问Web定位样式表。换句话说 - 从本地fs html页面的任何样式表中获取规则是不可能的。

如果我使用数据网址,也无法获得规则,例如:

<link rel="stylesheet" href="data:text/css;base64,Kntjb2xvcjpyZWQ7fQ==">

我不知道为什么会出现这种不公平的行为,但我希望有一天我会发现这些限制的真正原因。

因为我真的不明白为什么在浏览器本身访问时会阻止js访问css规则并且在没有任何问题的情况下呈现它们(跨域,本地文件系统等)

关于如何访问这些规则的任何建议?

在我的情况下,我写了一个适用于每个网站的js扩展名(所以我不能简单地将所需的css移动到我的域名)。

0 个答案:

没有答案