Saya memiliki aplikasi MVC3 yang memiliki halaman detail. Sebagai bagian dari itu saya memiliki deskripsi (diambil dari db) yang memiliki spasi dan baris baru. Ketika itu diberikan baris dan spasi baru diabaikan oleh html. Saya ingin menyandikan spasi dan baris baru tersebut agar tidak diabaikan.
Bagaimana kamu melakukannya?
Saya mencoba HTML.Encode tetapi akhirnya menampilkan encoding (dan bahkan tidak pada spasi dan baris baru tetapi pada beberapa karakter khusus lainnya)
html
css
newline
whitespace
line-breaks
Dan dot net
sumber
sumber
Jawaban:
Cukup gaya konten dengan
white-space: pre-wrap;
.sumber
white-space: pre-line;
jika Anda tidak ingin baris pertama dari setiap paragraf berlekuk.sudahkah Anda mencoba menggunakan
<pre>
tag.http://jsfiddle.net/NweRa/
sumber
Anda dapat menggunakan white-space: pre-line untuk mempertahankan jeda baris dalam format. Tidak perlu memasukkan elemen html secara manual.
atau tambahkan ke elemen html Anda
style="white-space: pre-line;"
sumber
Anda ingin mengganti semua spasi dengan
&nbsp;
( spasi non-putus) dan semua baris baru\n
dengan<<b></b>br>
(putus baris dalam html). Ini harus mencapai hasil yang Anda cari.Sesuatu dari sifat itu.
sumber
Saya sedang mencoba
white-space: pre-wrap;
teknik yang dinyatakan oleh pete tetapi jika string itu terus menerus dan panjang itu hanya kehabisan wadah, dan tidak melengkung karena alasan apa pun, tidak punya banyak waktu untuk menyelidiki .. tetapi jika Anda juga memiliki masalah yang sama, saya akhirnya menggunakan<pre>
tag dan css berikut dan semuanya baik-baik saja ..sumber
Seperti yang Anda sebutkan pada jawaban @Developer, saya mungkin akan menyandikan HTML pada input pengguna. Jika Anda khawatir tentang XSS, Anda mungkin tidak pernah membutuhkan input pengguna dalam bentuk aslinya, jadi Anda mungkin bisa menghindarinya (dan ganti spasi dan baris baru saat Anda menggunakannya).
Perhatikan bahwa keluar dari input berarti Anda harus menggunakan @ Html.Raw atau membuat MvcHtmlString untuk membuat input tertentu.
Anda juga bisa mencoba
tapi saya pikir itu tidak akan lepas ruang juga. Jadi dalam hal ini, saya sarankan lakukan saja. NET
pada input pengguna. Dan jika Anda ingin menggali lebih dalam tentang kegunaan, mungkin Anda dapat melakukan parsing XML dari input pengguna (atau bermain dengan ekspresi reguler) untuk hanya mengizinkan satu set tag yang telah ditentukan. Misalnya, izinkan
... tapi jangan izinkan
sumber
Bungkus deskripsi dalam
textarea
elemen.sumber
Ada cara sederhana untuk melakukannya. Saya mencobanya di aplikasi saya dan itu bekerja dengan cukup baik.
Cukup ketik: $ text = $ row ["text"]; echo nl2br ($ text);
sumber