jQuery:有没有一种方法可以抓取HTML元素的外部CSS并附加到它的“style”上?属性
jQuery: Is there a way to grab a HTML element's external CSS and append to its "Style" attribute?
基本上我想做的是抓住所有的CSS是在一个外部样式表中引用,例如<link rel="stylesheet" href="css/General.css">
和附加到任何现有的样式为每个HTML元素在我的页面。(使所有的CSS行内)
这样做的原因是因为我需要调用.html()
来抓取div并发送到服务器以制作PDF。这个工具的缺点是它只能识别内联CSS。
有什么办法可以做到吗?
编辑:这个问题与我的"可能的重复"有关,只是说把所有东西都放在<style>
标签中。虽然这可能是有用的,但我主要关心的是加载到style=""
html属性
过去我使用window.getComputedStyle(element);
来达到这个目的。它将返回应用于元素的所有样式的映射,然后您可以循环并将其作为内联样式应用。我不会将它们应用到实际的DOM,如果你可以避免它(只是创建一个文档片段/concat它在你发送的字符串的风格)。在一个元素上应用这么多的内联样式将会是性能上的噩梦。
使用计算样式可能还不够,因为在用户代理样式表中有供应商前缀的样式。如果您从Firefox发送标记到PhantomJS(webkit),您显然不会得到相同外观的元素。
相关文章:
- 如何为下面的给定代码提供外部 CSS
- Chrome审核:在外部CSS文件之间的头中发现了1个内联脚本块&”;
- HTML中没有包含外部CSS和JS文件
- 通过jQuery或Javascript应用于父窗口的外部css规则
- 在javascript内部呈现HTML时包含外部CSS
- 外部CSS影响(“出血”进入)具有聚合物的阴影DOM
- 如何将外部 css/js 文件提供给 NodeJS 应用程序显示的 html 文件
- 使用 javascript 更改外部 CSS 的属性
- HTTPS 站点:通过 HTTP 加载外部 CSS
- 如何将外部 css 属性转换为内联属性
- 我有一个.php文件,但我的外部 css 或 javascript 都无法正常工作
- 当使用Javascript渲染时,IE上的外部CSS被剥离
- 外部js文件中的外部css和jquery
- 将外部css和js放在rails中的位置
- 如何为日期选择器创建外部javascript和外部css文件,以及如何在eclipse中使用它
- 如果没有jQuery,则会从外部css文件或内部样式表中告知信息
- 将html文档中的css样式提取到外部css文件中
- PhantomJS页面上未考虑外部CSS
- 如何在外部CSS文件中查找规则的数量
- 使用JavaScript更改外部CSS表中的单个值