【问题标题】:Injecting CSS String as New Document Stylesheet注入 CSS 字符串作为新的文档样式表
【发布时间】:2011-12-19 05:19:40
【问题描述】:

我正在动态创建一个大型样式表作为字符串,并希望将其注入 iframe。最初我是这样处理的:

var css = '.newstyle { margin: 20px; } .newstyle2 { margin: 20px; }';
$('iframe').contents().find('head').append('<style type="text/css">'+css+'</style>');

很遗憾,IE7 不喜欢这种方法。我不确定如何处理这种注入。是否有跨浏览器解决方案可以让我从字符串中注入大量 CSS?

【问题讨论】:

  • 在这里尝试非 jQuery 解决方案:stackoverflow.com/questions/3158370/…
  • 我希望不使用 标签来减少 http 请求的数量。速度是这个脚本的关键。
  • 尝试将 css 注入体内...我似乎记得 IE 对此很挑剔。

标签: javascript jquery css dom iframe


【解决方案1】:

您可以为此使用document.stylesheets。它使您可以访问页面中的样式表。

查看这篇文章:http://kentbrewster.com/creating-dynamic-stylesheets/——它有点老,不是以 jQuery 为中心的,但我相信你可以根据自己的需要调整它。几年前我就使用过这种技术,我相信在稍作调整后它在所有浏览器中都能正常工作。

这里有更多关于 stylesheets 属性的信息:

【讨论】:

    猜你喜欢
    • 2013-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-30
    • 2013-02-21
    • 1970-01-01
    相关资源
    最近更新 更多