TinyMCE正在改变我的内联CSS

时间:2009-09-18 15:35:38

标签: javascript css tinymce

我在HTML编辑器中输入:

<p style="border:1px solid #edede4;border-top:none"></p>

我点击更新,然后再次点击html编辑器。 HTML(在Firefox中)已更改为:

<p style="border-style: none solid solid; border-color: -moz-use-text-color rgb(237, 237, 228) rgb(237, 237, 228); border-width: medium 1px 1px;" mce_style="border:1px solid #edede4;border-top:none"><br></p>

如果我在Internet Explorer中执行相同操作,则HTML将更改为:

<P style="BORDER-RIGHT: #edede4 1px solid; BORDER-TOP: medium none; BORDER-LEFT: #edede4 1px solid; BORDER-BOTTOM: #edede4 1px solid" mce_style="border:1px solid #edede4;border-top:none">&nbsp;</P>

为什么世界会改变?也许我可以改变一些TinyMCE设置?但我已经清理过了:假。想法?

如果我启用清理,我提到的更改不会发生。但是,TinyMCE改变了很多其他的东西。我不希望它弄乱我的代码:(任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:1)

尝试将verify_html设置为false。

Doc:TinyMCE Configuration/verify_html

答案 1 :(得分:1)

有时内联样式是必要的,就像这个项目的情况一样 在这种情况下,我只是逐个插入HTML代码。而不是插入:

<p style="border:1px solid #edede4;border-top:none"></p>

我做了类似的事情:

<p style=

"border:1px solid #edede4;border-top:none

"></p>

这并不完美,但它适用于这种情况,因为我不想更改任何TinyMCE设置。并且它不会被TinyMCE识别为样式代码。

答案 2 :(得分:0)

当我对TinyMCE有太多麻烦时,我只是尝试创建其他替代品。 “正确”的方法是在你的css中创建一个类。

而不是:

<p style="border:1px solid #edede4;border-top:none"></p>

使用:

<p class="p_border"></p>

并在你的css中声明:

.p_border {
    border:1px solid #edede4;
    border-top:none;
}

不幸的是,你正在做一份时事通讯,所以你需要内联。我没有测试在这个场景中每个“p”之前使用上面声明的类创建“样式”标签。您可以尝试查看它是否有效。

如果它不起作用,我会尝试使用“inline_styles:true”。