Javascript 将引用样式表动态添加到内联样式

Javascript 将引用样式表动态添加到内联样式,javascript,jquery,html,css,dynamic,Javascript,Jquery,Html,Css,Dynamic,场景 我已经创建了一个页面,客户可以在其中构建自己的页面、日历、小部件、文章等。我已经创建了第二个动态构建器页面,客户可以在其中构建自己的新闻稿 问题 我所有的css都是用类引用的,因为mailer非常有限,我必须添加所有样式内联 问题 是否有一个脚本可以通过类获取所有引用的样式,并将其添加到相关的元素/标记内联样式中 示例[简单] <p class='txtBlack'>Hello World</p> 你好,世界 皈依 <p class='txtBlack'

场景

我已经创建了一个页面,客户可以在其中构建自己的页面、日历、小部件、文章等。我已经创建了第二个动态构建器页面,客户可以在其中构建自己的新闻稿

问题

我所有的css都是用类引用的,因为mailer非常有限,我必须添加所有样式内联

问题

是否有一个脚本可以通过类获取所有引用的样式,并将其添加到相关的元素/标记内联样式中

示例[简单]

<p class='txtBlack'>Hello World</p>

你好,世界

皈依

<p class='txtBlack' style='color:#000;'>Hello World</p>

你好,世界


希望这足够清楚,以便理解。

这个答案解释了如何:

CSSStyleDeclaration()

样式:CSSSTYLEDECLASSION对象包含cssText:

cssText: "width: 100px"
CSSST类型声明规范:

要获取具有类名的所有元素,请使用:

jQuery("[class]")

下面是一个解决方案,您可以使用“getElementsByClassName”javascript函数来收集具有指定类名的元素。但请记住,这在IE浏览器中是行不通的。所以对于IE来说,你必须有自己的功能。希望这对你有所帮助。

我会对每个元素使用
element.currentStyle
window.getComputedStyle()
,然后“手动”读取我想要的内容并覆盖我确定在邮件应用程序中不起作用的内容

我在这里举了个例子:

另一种方法是从样式表中读取规则,然后将其应用于内联样式。但是如果你有像
.myClass:firstChild>这样的选择器怎么办呢D也许jquery可以帮上忙


您需要一些方法:

邮件应用程序(尤其是Outlook)非常有限。我猜你的邮件结果不会像你的网页。是的,正如我所说的,这是正确的。但要将所有内容都设置为内联样式,并转换表……这将有一个非常接近的比较谢谢你的回答。看起来很棒,在IE中也能正常工作。如何使用jQuery选择器实现这一点?第一种方法是获取页面上的每个元素,读取其当前样式,然后将其保存到
style
属性。第二种方法是从样式表中读取每个css规则,找到与其选择器匹配的元素,然后对它们应用css。jquery帮助很多人通过选择器查找元素,我举了一个例子:
jQuery("[class]")