WYSIHTML5如何输出内联CSS?

时间:2013-02-06 07:42:17

标签: css wysihtml5

我正在运行WYSIHTML5以允许自己输入电子邮件文本并将其格式化以便以HTML格式发送。但是,当我查看格式化文本的HTML时,我得到与颜色元素相关联的类。这是预期的行为,但由于我需要在电子邮件中发送输出,因此我希望将这些颜色放在Inline CSS中,因为我无法使用这样的电子邮件附加CSS文件。这里的例子

<span class="wysiwyg-color-green">Testing</span>

即如果我为文本选择绿色:Testing。有没有办法修改绿色成为html本身的一部分,如

<span style="color:green">Testing</span>

我试图搜索但却找不到,所以我不是在没有先找它的情况下问。如果有人可以请点到某处。即使是指向此指南的链接,也可以。我不希望你花时间为我编写代码。

2 个答案:

答案 0 :(得分:4)

你可以用php:

来做
str_replace ( 'class="wysiwyg-color-green"', 'style="color:green"' ,$html)

你可以用javascript做同样的事情,尽管做服务器端的所有事情总是更安全。 http://www.w3schools.com/jsref/jsref_replace.asp

答案 1 :(得分:1)

这里是我使用的javascript代码,但注意上面的Jean-Georges警告可能是一个好主意:

replaceColorStylesWithInlineCss = function (htmlContents){
    result = htmlContents.replace('class="wysiwyg-color-black"', 'class="wysiwyg-color-black" style="color:black"');
    result = result.replace('class="wysiwyg-color-silver"', 'class="wysiwyg-color-silver" style="color:silver"');
    result = result.replace('class="wysiwyg-color-gray"', 'class="wysiwyg-color-gray" style="color:gray"');
    result = result.replace('class="wysiwyg-color-maroon"', 'class="wysiwyg-color-maroon" style="color:maroon"');
    result = result.replace('class="wysiwyg-color-red"', 'class="wysiwyg-color-red" style="color:red"');
    result = result.replace('class="wysiwyg-color-purple"', 'class="wysiwyg-color-purple" style="color:purple"');
    result = result.replace('class="wysiwyg-color-green"', 'class="wysiwyg-color-green" style="color:green"');
    result = result.replace('class="wysiwyg-color-olive"', 'class="wysiwyg-color-olive" style="color:olive"');
    result = result.replace('class="wysiwyg-color-navy"', 'class="wysiwyg-color-navy" style="color:navy"');
    result = result.replace('class="wysiwyg-color-blue"', 'class="wysiwyg-color-blue" style="color:blue"');
    result = result.replace('class="wysiwyg-color-orange"', 'class="wysiwyg-color-orange" style="color:orange"');
    return result
};

注意:我保留了所见即所得的样式,因为我保存到数据库并希望在我再次加载时在wysihtml5部分正确显示。如果你聪明的话就干掉它。