Apa kebalikan dari nbsp?


87

Sebuah  karakter adalah ruang yang tidak memungkinkan untuk baris breaking.

<p>lorem ipsum here&nbsp;are&nbsp;some&nbsp;words and so on</p>

| lorem ipsum                |
| here are some words and so |
| on                         |

Apa kebalikan dari itu? Artinya, karakter yang TIDAK dirender sebagai spasi, tetapi DAPAT digunakan untuk pemutusan baris.

<p>foo supercalifragilisticexpialidocious bar</p>
<!--   put char here ^   and here ^ -->

|foo supercalifragi |
|listicexpiali      |
|docious bar        |

or with wider size:

|foo supercalifragilisticexpiali   |
|docious bar                       |

Saya mengetahui karakter tanda hubung lembut , tetapi untuk tujuan saya, saya secara khusus tidak ingin tanda hubung ditambahkan saat jeda.

Jawaban:


96

Anda menginginkan karakter unicode ZERO-WIDTH SPACE (\ u200B).

Anda bisa mendapatkannya dalam HTML dengan &#8203;atau &#x200b;.

Istirahat dan non-istirahat eksplisit:

LB7: Jangan putus sebelum spasi atau spasi lebar nol.
LB8: Hentikan sebelum karakter apa pun setelah spasi lebar-nol, bahkan jika satu atau beberapa spasi menghalangi.
http://unicode.org/reports/tr14/


Saya menguji ini, tidak menghasilkan jeda baris di Firefox 3.5.7.
Noon Silk

19
Ini tidak dimaksudkan untuk menghasilkan penggalan baris yang eksplisit. Ini dimaksudkan untuk menunjukkan titik di mana garis dapat dibungkus jika terlalu panjang untuk muat ke mana pun garisnya pergi.
Anon.

2
Jadi .... karakter ini bisa menjadi jahat karena jika Anda menyalin konten di sekitarnya yang mengandungnya (dalam editor yang peka terhadap unicode yang akan dengan senang hati bermain bersama) Anda tidak akan menyadari kehadirannya, dan itu akan menyebabkan misalnya penyusun tersedak. keras. Misalnya Chrome akan memberi tahu Anda "KARAKTER ILEGAL" tetapi tidak menunjukkan di mana tempatnya. Saya akan menggunakan trik yang diakui rapi ini sebagai pilihan terakhir
Steven Lu

Ini harus disebut "Non Space Break"
jackreichert

1
Alternatif yang terlihat adalah Hyphen.
davidcondrey

38

Ada juga tag wbr yang kurang dikenal , yang memungkinkan browser memutuskan apakah akan melanggar batas atau tidak.


1
Perlu dicatat bahwa ini tidak standar, dan tidak didukung di semua browser.
Brian Campbell

1
@ Brian, periksa tautan quirksmode yang diposting fredden.
nickf

10
Jika cukup baik untuk Facebook, itu cukup baik untuk setiap orang ;-)
Martin Bean

1
WBR berfungsi di Chrome 34.0.1847.131 m, Firefox 29.0.1, dan Opera Chromium 12.17. Itu tidak bekerja di IE 11.0.9600.17105.
Dave Burton

apakah <wbr> menambahkan -?
beppe9000

16

Ada halaman bagus di quirksmode.org yang menjawab pertanyaan ini dengan cukup baik IMHO. http://www.quirksmode.org/oddsandends/wbr.html

Singkatnya: gunakan <wbr /> atau & # 8203; (atau & malu; tetapi Anda menyebutkan bahwa Anda tidak ingin setrip).


Tidak semua kemungkinan ini didukung oleh semua browser. Saya kira & # 8203; adalah solusi terbaik karena sebagian besar browser seharusnya dapat mengenali Unicode.
AndiDog

dan pengguna IE6 mendapatkan mesin terbang yang jelek rupanya ... hatiku menangis.
nickf


2

Anda dapat menggunakan properti CSS3 yang disebut word-wrap

p.test {word-wrap:break-word;}

Semoga membantu!


2
Ini hanya berfungsi jika Anda tidak peduli di mana baris baru ditambahkan.
JJJ

Pertanyaannya adalah untuk mengatur posisi dalam kata tertentu di mana harus istirahat, bukan bagaimana mengaktifkan istirahat kerja secara umum.
Frode Evensen

-5

Ada banyak diskusi tentang ini tetapi ini telah menjadi standar yang lebih atau kurang untuk digunakan &shy;


5
Ini adalah tanda hubung lembut, yang tidak diinginkan penanya.
Siput mekanik
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.