J'ai mis du texte dans un <textarea>
comme ça:
First day
1-one Apple.
2-one orange.
3-two cups of milk.
Mais cela se voit dans un <label>
comme ça:
First day 1- one Apple. 2-one orange. 3- two cups of milks.
Comment puis-je lui donner la même apparence que dans un <textarea>
?
Donnez l'étiquette white-space: pre-wrap
et il coupera la ligne comme le fait la zone de texte
textarea {
height: 70px;
}
label {
white-space: pre-wrap;
}
<textarea>
First day
1-one Apple.
2-one orange.
3-two cups of milk.
</textarea>
<br><br>
<label>
First day
1-one Apple.
2-one orange.
3-two cups of milk.
</label>
Outre le white-space
propriété combinée avec un nouveau caractère de ligne (par exemple \n
), la manière HTML de couper la ligne utilise <br>
, ajoutez ici un petit exemple de leur fonctionnement et de leur différence.
Notez que même l'espace est préservé en utilisant par exemple white-space: pre
, comme le montre l'exemple de code "en ligne"
var sample_script = document.querySelector('.sample.script');
var name = "One Two Three";
var name1 = name.replace(/ /g, '\n');
var name2 = name.replace(/ /g, '<br>');
sample_script.innerHTML += name1;
sample_script.innerHTML += "<br><br>";
sample_script.innerHTML += name2;
div.pre {
white-space: pre;
}
/* styling for this demo */
body {display: flex;}
.sample {flex: 1; margin: 0 20px;}
<div class="sample inline">
Inline
<hr>
<div>
One
Two
Three
</div>
<div class="pre">
One
Two
Three
</div>
</div>
<div class="sample script">
Script
<hr>
</div>
Il n'y a aucun moyen d'ajouter des balises HTML dans un <textarea>
tag, donc formatage avec css par exemple ou en utilisant <br>
les balises ne fonctionneront pas.
À présent, <textarea rows="4" cols="20">
, c'est disons le mieux que vous puissiez faire: vous définissez le nombre minimum de lignes à afficher comme "4" et le nombre minimum de caractères par ligne: "20".
La meilleure méthode consiste à utiliser <div contenteditable="true"></div>
dans lequel vous pouvez utiliser des balises comme <br>
et également le style CSS.
Si vous récupérez du texte dans la zone de texte elle-même, lorsque nous appuyons sur Entrée dans la zone de texte, cela crée un nouveau retour de ligne. Vous pouvez remplacer ce retour de nouvelle ligne par
/n, /r with <br>