5

मैंने अपनी वेबसाइट पर CMS सामग्री अपडेट करने के लिए CKEditor का उपयोग किया है। मैं भी FontAwesome, जो कल्पना प्रतीक के सेट शामिल है, कि इससीकेएडिटर और तत्वों से बचने

<i class="icon-envelope"></i> 

समस्या यह है कि CKEditor क्लाइंट की तरफ इस i टैग निकल जाता है की तरह प्रदर्शित किया जा सकता का उपयोग कर, और मैं इसे स्रोत मोड में नहीं देख सकता।

मैं इस टैग को कैसे अनुमति दे सकता हूं? मैंने CONFIG.removeFormatTags = '' की कोशिश की है, लेकिन यह मदद नहीं करता है।

+0

मैं एक ही समस्या भर में आया था उनका कहना है, एक समाधान के लिए यहां पढ़ें http://stackoverflow.com/a/18254082/ 1316372 – HenryW

उत्तर

10

इसे हटा दिया गया है क्योंकि यह खाली है। अपने टैग को सुरक्षित रखने के लिए कुछ गैर-ब्रेकिंग स्पेस &nbsp; या शून्य-चौड़ाई वाली जगह &#8203; रख दें।

आप CKEDITOR.dtd.$removeEmpty ऑब्जेक्ट से i को भी हटा सकते हैं। हालांकि, class="icon-envelope" के बिना यह अन्य खाली <i> टैग तोड़ सकता है। इसे ठीक करने के लिए आपको class="icon-envelope" के बिना खाली <i>'s फ़िल्टर करने के लिए data processor के साथ खेलना होगा। मुझे लगता है कि बहुत आसान है।

+1

इसे पहले से ही config.fillEmptyBlocks के माध्यम से संभाला नहीं जाना चाहिए जो डिफ़ॉल्ट रूप से सत्य पर सेट है? कोई तत्व IK को हटाने के लिए CKEDITOR.dtd। $ RemoveEmpty ऑब्जेक्ट को कैसे संपादित करता है? मैं इसे जेएस फाइलों में कहीं भी हटाए जाने के रूप में सूचीबद्ध नहीं कर सकता। मैं गैर-ब्रेकिंग स्पेस के बजाय ​ का उपयोग करने के लिए fillEmptyBlocks फ़ंक्शन को संपादित करना चाहता हूं। फ़ॉन्ट-कमाल में आइकन का अंतर केवल तभी सही होता है जब तत्व खाली रहता है या ​ का उपयोग करता है –

0

नीचे मुझे के लिए काम किया .. विंस Kronlein करने के लिए धन्यवाद config.fillEmptyBlocks

CKEDITOR.editorConfig = function(config) { 
     config.fillEmptyBlocks="&#8203;"; 
} 
CKEDITOR.dtd.$removeEmpty['span'] = false; 
CKEDITOR.dtd.$removeEmpty['i'] = false; 
संबंधित मुद्दे