我有一个名为' Paragraph'的自定义样式设置,它(显然)为用户创建了一个p
元素,用于输入文本。
首次进入CKEditor区域时,未设置样式,用户在任何特定元素内输入文本。例如,底部的位置栏只显示body
有没有办法让编辑器默认使用p元素,这样当用户第一次进入编辑区时,它们就在body > p
?
我花了一段时间检查文档,并且可以看到如何设置默认字体和字体大小,但这不是我想要的。
修改 以下是我自定义提供样式的 styles.js 文件:
CKEDITOR.stylesSet.add( 'default', [
/* Block Styles */
// These styles are already available in the "Format" combo ("format" plugin),
// so they are not needed here by default. You may enable them to avoid
// placing the "Format" combo in the toolbar, maintaining the same features.
{ name: 'Paragraph', element: 'p' },
{ name: 'Heading 1', element: 'h1' },
{ name: 'Heading 2', element: 'h2' },
{ name: 'Heading 3', element: 'h3' },
{ name: 'Heading 4', element: 'h4' },
{ name: 'Heading 5', element: 'h5' },
{ name: 'Heading 6', element: 'h6' }
]);
这是 config.js 文件
CKEDITOR.editorConfig = function (config) {
// To disable CKEditor ACF
config.allowedContent = true;
config.uiColor = '#ffffff';
config.dialog_backgroundCoverColor = '#888888';
config.skin = 'moono';
config.enterMode = CKEDITOR.ENTER_BR;
config.shiftEnterMode = CKEDITOR.ENTER_P;
config.entities_latin = false;
config.protectedSource.push(/<script[\s\S]*?<\/script>/gi); // <SCRIPT> tags.
config.toolbar_Full = config.toolbar_Default =
[
['Source', '-'],
['Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord', 'SpellChecker', 'Scayt', '-'],
['Undo', 'Redo', 'Find', 'Replace', 'RemoveFormat', '-'],
//['Bold', 'Italic', 'Underline', 'Strike', 'Subscript', 'Superscript', '-'],
//['NumberedList', 'BulletedList', 'Outdent', 'Indent', 'Blockquote','CreateDiv', '-'],
['NumberedList', 'BulletedList', 'Outdent', 'CreateDiv', 'Blockquote', '-'],
//['JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock', '-'],
['InsertLink', 'Unlink', 'Anchor', '-'],
//['InsertImageOrMedia', 'QuicklyInsertImage', 'Table', 'HorizontalRule', 'SpecialChar', '-'],
['InsertImageOrMedia', 'Table', 'SpecialChar', '-'],
//['InsertForms', 'InsertPolls', 'InsertRating', 'InsertYouTubeVideo', 'InsertWidget', '-'],
['InsertForms', 'InsertYouTubeVideo', 'InsertWidget', '-'],
//['Styles', 'Format', 'Font', 'FontSize'],
['Styles', '-'],
//['TextColor', 'BGColor', '-'],
//['InsertMacro', '-'],
['Maximize', 'ShowBlocks']
];
config.toolbar = config.toolbar_Full;
config.scayt_customerid = '***';};
以下是首次进入该区域时所发生情况的屏幕截图:
答案 0 :(得分:3)
在这种情况下,罪魁祸首似乎是config.enterMode = CKEDITOR.ENTER_BR;
此处的解决方法是插入<p></p>
作为编辑器的默认内容,以便在初始化或清除时它实际上不为空。光标应自动插入段落内。