2011-10-08 19 views
6

क्या कोई जानता है कि एक संतोषजनक div की सामग्री को कैसे एक बल या पी से घिरा हुआ है? यदि संतुष्ट की सामग्री एक खाली div है - उदाहरण के लिए फ़ायरफ़ॉक्स पर एक रेंज काम के साथ इसे चुनना, लेकिन क्रोम पर टेक्स्ट div से पहले डाला जाता है। मैं पाठसामग्री के लिए सामग्री को विभाजित करने योग्य सामग्री div या p

HTML: 
<div id="edit" contenteditable="true"><div id="insert"></div></div> 

Tried this but the results are very inconsistent cross browser: 

var range = document.createRange(); 
range.selectNodeContents(document.getElementById('insert')); 

var selection = window.getSelection(); 
selection.removeAllRanges(); 
selection.addRange(range); 

यहाँ दूसरा सवाल है कि अगर यह एक खाली contenteditable के लिए किसी भी तरह संभव है, यह भी मैन्युअल रूप से नई-पंक्तियों डालने के लिए इस्तेमाल किया जा सकता है की जरूरत है सुनिश्चित करने के लिए कभी नहीं एक नए के बजाय < br/> टैग प्राप्त करने के लिए div या पी?

धन्यवाद

अद्यतन

यह कुछ हद पर निम्न काम करता है लगता है:

<div id="edit" contenteditable="true"><div id="insert"><br/></div></div> 
अतिरिक्त < br/> फायरफॉक्स, क्रोम, सफारी के साथ

सब एक एकल खाली पंक्ति उत्पन्न जहां सभी इनपुट div के अंदर समाप्त होता है, लेकिन इंटरनेट एक्सप्लोरर (परीक्षण संस्करण 9) दो रिक्त रेखाएं दिखाता है। यदि कोई अन्य समाधान उपलब्ध नहीं है - कोई भी विचार ब्राउज़र पहचान का उपयोग किए बिना इसे कैसे ठीक किया जाए?

+0

मैं फ़ायरफ़ॉक्स में अभी भी बग का एक गुच्छा तय करने के लिए एक महीने से अधिक समय के लिए इस पर एक उत्तर खोज रहा हूं। Thx u thx u thx u। –

उत्तर

0

आप अपनी सीएसएस फ़ाइल में br टैग ओवरराइड कर सकते हैं।

br { 
    display:block; 
    clear: both; 
    height: 1em; 
    line-height: 1em; 
} 

मैं काफी यकीन है कि अगर em काम करेंगे नहीं हूँ। यदि नहीं, तो आपको px प्रारूप भी आजमाने की आवश्यकता होगी।