Добавьте следующее в ваш config.js файл для CKEditor:
config.enterMode = CKEDITOR.ENTER_BR;
Пример:
...
CKEDITOR.editorConfig = function (config)
{
config.enterMode = CKEDITOR.ENTER_BR;
...
};
Подробности
Конфигурациянастройка, которая управляет этим поведением, основана на том, что вы хотите сделать, когда пользователь нажимает Enter .
На всякий случай, если кто-то, кто плохо знаком с работой с HTML, прочитает это, я включаю некоторые основныеобъяснение используемых концепций и причин, по которым необходимо вставлять тег при нажатии клавиши Enter .
Мы знаем, что если мы введем какой-либо текст в документ HTML, а затем добавим дополнительный текств новой строке браузер не будет отображать текст в виде двух строк, он будет игнорировать любые возвраты каретки и сконцентрирует несколько пробелов между символами в один пробел.
Следующий HTML-код:
qwer
tyui
Будет отображаться как:
qwer tyui
Поэтому редактору нужно вставить тег HTML, чтобы сообщить браузеру, что он должен отображать вторую группутекст на новыйline.
Параметр конфигурации, который управляет этим параметром, config.enterMode
и предлагает три параметра:
1 - Вставить абзац
При настройке по умолчанию каждый раз создается элемент абзаца Нажатие :
config.enterMode = CKEDITOR.ENTER_P; // inserts `<p>...</p>`
2 - Вставить 'div'
Вы можете создать элемент div
вместо абзаца:
config.enterMode = CKEDITOR.ENTER_DIV; // inserts `<div></div>`
3 - Вставить разрыв (нужную настройку)
Если вы предпочитаете не переносить текст во что-либо, вы можете вставить тег разрыва строки:
config.enterMode = CKEDITOR.ENTER_BR; // inserts `<br />`
Документация CKEditor указывает, что использование параметра ENTER_BR
не рекомендуется :
Примечание. Рекомендуется использовать параметр CKEDITOR.ENTER_P
из-за его семантического значенияи правильность.Редактор оптимизирован для этого параметра.
Другой связанный параметр 'autoParagraph'
Существует второй параметр, который управляет аналогичной ситуацией - config.autoParagraph
.Как это работает, зависит от настройки config.enterMode
, описанной выше.
autoParagraph
определяет, будут ли встроенные элементы, такие как span
, обернуты в элемент блока (p
или div
), заданный enterMode
настройка.По умолчанию используется обтекание встроенных элементов, поэтому при вводе диапазона (например, HTML):
<span>asdfg</span>
Он будет заключен в элемент ap или div следующим образом:
<p><span>asdfg</span></p>
или это:
<div><span>asdfg</span></div>
Встроенный элемент не будет перенесен, если вы установите его на false
или если вы установите enterMode
на CKEDITOR.ENTER_BR
.
Документация CKEditor включает это примечание о config.autoParagraph
:
Примечание. Изменение значения по умолчанию может привести к непредсказуемым проблемам с юзабилити.
Еще больше настроек
Есть еще три параметра, которые в некоторой степени связаны с этой темой:
config.fillEmptyBlocks
config.forceEnterMode
config.ignoreEmptyParagraph
Справочник
Полный список доступных параметров конфигурации можно найти здесь: