HTML - Newline char dans la DIV de contenu modifiable?
Je suis le stockage de contenu dans la base de données, par exemple:
Hello
This
is
Text
et quand je passe que pour un textarea, il reste avec la nouvelle sauts de ligne. Mais si je passe ce texte à un div avec un contenu modifiable, ça reste comme ceci:
Hello This is Text
Comment puis-je résoudre ce problème?
- Merci pour cette question. J'étais fatigué de frapper ma tête autour de lui, mais ne pouvait pas trouver un solution pour ce.
Vous devez vous connecter pour publier un commentaire.
Définir un style de la div:
white-space: pre
ouwhite-space: pre-wrap
Exemple: http://jsfiddle.net/fPv6S/
white-space
(personnellement, je suis allé avecpre-wrap
): developer.mozilla.org/en-US/docs/Web/CSS/white-spacewhite-space:pre-line
contenteditable
zone, les retours à la ligne sont ignorés.word-wrap: break-word;
maiswhite-space: pre
fonctionne pour moiPour ajouter quelques infos sur @Explosion Pilules réponse correcte et en extraire des informations à partir de MDN:
Le CSS
white-space
attribut est là pour vous aider:pré:
Cela pourrait entraîner des barres de défilement horizontales comme le montre l'exemple!
pre-wrap:
Comme @ceremcem souligné les sauts de ligne à la fin de la zone ne seront pas transférés lorsque le texte est de copier-coller, ce qui est logique puisque ces sauts de ligne ne font pas partie de la mise en forme du texte, mais plutôt de l'apparence.
pré-ligne:
CSS:
HTML:
MODIFIER 08/14/2018:
Dans Chrome, vous risquez de rencontrer des problèmes: en Appuyant sur Entrée va générer un nouveau
<div>
à l'intérieur de votre contenteditable. Pour empêcher cela, vous pouvez appuyer sur Maj+Entrée ou setdisplay: inline
à la contenteditable<div>
comme on le voit dans la tripoter.Vous pouvez chercher et remplacer les retours à la ligne avec
<br />
.http://jsfiddle.net/fPv6S/1/
De l'essayer......
Qui va le faire...