TinyMCE正在删除<style>标签</style>

时间:2010-06-14 13:19:40

标签: css tinymce

我正面临着TinyMCE的问题。当我在TinyMCE的HTML编辑器中输入样式标记时,它会在我单击更新时删除标记。

<style type="text/css"> 
     .newclasss { color:#c9c9c9; } 
</style>

我的有效元素如下:

<script type="text/javascript">

var valid_elms = "hr[class|width|size|noshade]";
valid_elms    += "span[class|align|style],";
valid_elms    += "font[face|size|color|style],";
valid_elms    += "img[href|src|name|title|onclick|align|alt|title|";
valid_elms    += "width|height|vspace|hspace],";
valid_elms    += "iframe[id|class|width|size|noshade|src|height|";
valid_elms    += "frameborder|border|marginwidth|marginheight|";
valid_elms    += "target|scrolling|allowtransparency],style";

extended_valid_elements: valid_elms
</script>

任何人都可以帮忙吗?

5 个答案:

答案 0 :(得分:66)

由于样式标记不是有效的XHTML,因此TinyMCE禁止在标记之外添加它们。

您必须将样式标记添加到valid children configuration

valid_children : "+body[style]"

编辑:此解决方案适用于版本3.4.2

Source

答案 1 :(得分:7)

"hr[class|width|size|noshade],font[face|size|color|style],span[class|align|style],img[href|src|name|title|onclick|align|alt|title|width|height|vspace|hspace],iframe[id|class|width|size|noshade|src|height|frameborder|border|marginwidth|marginheight|target|scrolling|allowtransparency],style[type]"

让我知道这对你有用吗<​​/ p>

答案 2 :(得分:2)

如果您将tinyMCE置于全页模式,则可以将样式放在<head>

<script type="text/javascript">
tinyMCE.init({
        plugins : "fullpage",
});
</script>

答案 3 :(得分:1)

它有点hacky但是我使用的是TinyMCE 4并且处于紧张状态,所以我在TinyMCE编辑器的Source Code视图中添加了<script>标记,使用jQuery to change the styles

<script>$("#signup").css("font-weight", "bold");</script>

这假设TinyMCE已设置为不禁止脚本标记,并且您的页面已经包含jQuery,就像我的一样,如果不是,您可以使用标准javascript to change styles

答案 4 :(得分:0)

对我来说,我需要在TinyMCE 4.5.7中执行以下操作:

tinyMCE.schema.addValidChildren("body[style]")