【发布时间】:2012-11-30 06:55:36
【问题描述】:
我正在使用 tinymce 并将其保存到数据库中。
当我使用tinymce编辑保存的内容并再次保存时,它会在开头插入一个p标签。
一遍又一遍地编辑内容会在内容的开头留下很大的空白。
有人知道解决办法吗?
【问题讨论】:
标签: tinymce
我正在使用 tinymce 并将其保存到数据库中。
当我使用tinymce编辑保存的内容并再次保存时,它会在开头插入一个p标签。
一遍又一遍地编辑内容会在内容的开头留下很大的空白。
有人知道解决办法吗?
【问题讨论】:
标签: tinymce
TinyMce 自动在新行中添加“<p>”。
您可以像这样在 tinyMce 初始化中设置此选项:
tinyMCE.init({
mode : "textareas",
theme : "advanced",
force_br_newlines : false,
force_p_newlines : false,
forced_root_block : '',
});
希望对你有帮助
冯斯基
【讨论】:
forced_root_block: '' 阻止 tinymce 不断用<p> 包裹我的<span> 标签。谢谢!
invalid_elements:"div" 以清除多余的 div。
标签
我确信@Fonski 的答案是正确的,但我认为我会为其他对代码放置位置感到困惑的人更新此内容。我将以下内容放在我的 _config.php 文件中以使其工作:
$defaultEditorConfig = HtmlEditorConfig::get('cms');
$defaultEditorConfig->setOptions(
array(
'mode' => 'textareas',
'theme' => 'advanced',
'force_br_newlines' => false,
'force_p_newlines' => false,
'forced_root_block' => ''
)
);
注意:如果您只想删除自动包装图像标签(等)的 p 标签,您只需设置'forced_root_block' => '' 选项。
编辑:此建议适用于使用 SilverStripe 的人,我发布此建议时认为问题是 SilverStripe 特定的。
【讨论】:
对我来说,它通过使“force_br_newlines : true”而不是 false 起作用。
tinyMCE.init({
mode : "textareas",
theme : "advanced",
force_br_newlines : true,
force_p_newlines : false,
forced_root_block : ''
});
希望对你有帮助
【讨论】:
来自 tinymce.js v4.1.10 代码:
newBlockName = (settings.force_p_newlines ? 'p' : '') || settings.forced_root_block;
所以避免
的关键似乎如前所述
settings.force_p_newlines = false
和
settings.forced_root_block = ''
【讨论】: