Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to preserve white spaces in content editable div

Tags:

I am using the content editable div as a field to fetch user inputs in my website. But my problem is that when i get the contents of the div using jquery all the white spaces are lost which are entered by the user in the div ?

So, I want to know is there any way to preserve all the white spaces for content editable div ?

Thanks

like image 844
Vinit Sharma Avatar asked Oct 28 '13 23:10

Vinit Sharma


2 Answers

I found the answer here: http://simonewebdesign.it/blog/how-to-make-browser-editor-with-html5-contenteditable/

Your css style for the content-editable element should contain the following:

.content_editable_element {
    white-space: pre-wrap;       /* css-3 */
    white-space: -moz-pre-wrap;  /* Mozilla, since 1999 */
    white-space: -pre-wrap;      /* Opera 4-6 */
    white-space: -o-pre-wrap;    /* Opera 7 */
    word-wrap: break-word;       /* Internet Explorer 5.5+ */
}
like image 81
iamio Avatar answered Oct 10 '22 10:10

iamio


div has a default white-space: normal;. How is it gone anyway and how do you get/fetch the contents? I think line-breaks will also be a problem

<div class="input" contenteditable="true">abc 123 def 456</div>
<button class="get">get</button>   
$('.get').click(function(){alert($('.editable').text());});

JSFiddle

like image 22
Mark S Avatar answered Oct 10 '22 10:10

Mark S