7 に答える
protectedSource ソリューションを使用すると、i
タグは削除されなくなりますが、タグはimg
CKEditor の WYSIWIG モードで表示されなくなります (私は 4.3.1 を使用しています)。私にとってよりうまくいった解決策は、を使用して空のi
タグの削除を無効にすることですCKEDITOR.dtd.$removeEmpty
たとえば、config.js に以下を追加しました。
// allow i tags to be empty (for font awesome)
CKEDITOR.dtd.$removeEmpty['i'] = false;
注: これはCKEDITOR.editorConfig = function( config )
関数の外に配置する必要があります。
<i>
タグで遭遇したこの特定の問題の解決策を見つけました
drupalフォーラムから得た元の回答
それに対する修正または微調整 (名前を付けます) は、ckeditors config.js に以下を設定することです。
// ALLOW <i></i>
config.protectedSource.push(/<i[^>]*><\/i>/g);
リンクを教えてくれたSpasticdonkeyに感謝します。
ここに私のために働くものがあります
以下の 3 行のコードを drupal ckeditor プロファイル設定 admin/config/content/ckeditor/edit/Full に同じ順序で追加します
高度なオプション >> カスタム JavaScript 構成
config.allowedContent = true;
config.extraAllowedContent = 'p(*)[*]{*};div(*)[*]{*};li(*)[*]{*};ul(*)[*]{*}';
CKEDITOR.dtd.$removeEmpty.i = 0;
最初の行は、高度なフィルタリングをほとんどオフにしています
2 行目では、すべてのクラス ( )、任意のスタイル { }、および p、div、li、および ul の任意の属性 [*] を許可しています。
最後の行は空のタグです...この行は画像で機能します... config.protectedSource.push(/]*></i>/g); を使用すると、編集中にタグを取り除きます。
私はそれに対する恒久的な解決策を見つけました.実際に何が起こったのかckeditorは空白のタグのみを削除しました.タグが何であれ、b<i>
タグまたは<span>
タグ
font-awesome、maeterlize アイコンなどのアイコンを使用している場合は、ファイル内で以下のコードを使用して停止できconfig.js
ます
CKEDITOR.dtd.$removeEmpty.span = false;
CKEDITOR.dtd.$removeEmpty.i = false;
より多くの空白タグを使用している場合は、タグ名を後に追加する必要があります$removeEmpty