Quel est le contraire d'un nbsp?

87

UNE   caractère est un espace qui ne permet pas de saut de ligne.

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

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

Quel est le contraire de cela? Autrement dit, un caractère qui n'est PAS rendu comme un espace, mais PEUT être utilisé pour le saut de ligne.

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

|foo supercalifragi |
|listicexpiali      |
|docious bar        |

or with wider size:

|foo supercalifragilisticexpiali   |
|docious bar                       |

Je connais le caractère de trait d'union souple , mais pour mes besoins, je ne veux pas spécifiquement d' un trait d'union ajouté à la pause.

nickf
la source

Réponses:

96

Vous voulez le caractère Unicode ZERO-WIDTH SPACE (\ u200B).

Vous pouvez l'obtenir en HTML avec &#8203;ou &#x200b;.

Pauses et non-pauses explicites:

LB7: ne pas couper avant les espaces ou les espaces de largeur nulle.
LB8: Saut avant tout caractère suivant un espace de largeur nulle, même si un ou plusieurs espaces interviennent.
http://unicode.org/reports/tr14/

Anon.
la source
J'ai testé cela, cela ne produit pas de saut de ligne dans Firefox 3.5.7.
Noon Silk
19
Il n'est pas destiné à produire un saut de ligne explicite. Il est destiné à indiquer un point où la ligne peut être enveloppée si elle est trop longue pour tenir là où elle est censée aller.
Anon.
13
Eh bien, c'est IE6 pour toi.
Mike Weller
2
Donc ... ce personnage peut être maléfique parce que si vous copiez du contenu autour de celui qui le contient (dans des éditeurs compatibles Unicode qui joueront avec plaisir), vous ne serez pas conscient de sa présence, et cela provoquera par exemple l'étouffement des compilateurs. dur. Par exemple, Chrome vous indiquera "PERSONNAGE ILLÉGAL" mais ne vous indiquera pas où il se trouve. J'utiliserais ce truc, certes, en dernier recours
Steven Lu
1
Son alternative visible est un trait d'union.
davidcondrey
38

Il y a aussi la balise wbr peu connue , qui permet au navigateur de décider de casser la ligne ou non.

Matt Hampel
la source
1
Il convient de noter que cela n'est pas standard et n'est pas pris en charge dans tous les navigateurs.
Brian Campbell
1
@Brian, vérifiez le lien quirksmode publié par Fredden.
nickf
10
Si c'est assez bon pour Facebook, c'est assez bon pour tout le monde ;-)
Martin Bean
1
WBR fonctionne dans Chrome 34.0.1847.131 m, Firefox 29.0.1 et Opera Chromium 12.17. Cela ne fonctionne pas dans IE 11.0.9600.17105.
Dave Burton
<wbr> ajoute- -t-il un ?
beppe9000
16

Il y a une belle page sur quirksmode.org qui répond assez bien à cette question à mon humble avis. http://www.quirksmode.org/oddsandends/wbr.html

En bref: utilisez <wbr /> ou & # 8203; (ou & timide; mais vous avez mentionné que vous ne voulez pas du tiret).

Fredden
la source
Toutes ces possibilités ne sont pas prises en charge par tous les navigateurs. Je suppose & # 8203; est la meilleure solution car la plupart des navigateurs devraient être capables de reconnaître Unicode.
AndiDog
et les utilisateurs d'IE6 obtiennent apparemment un glyphe laid ... mon cœur pleure.
nickf
4

utilisez <wbr> .

jrharshath
la source
1

Vous pouvez utiliser la propriété CSS3 appelée word-wrap

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

J'espère que cela aide!

Swanidhi
la source
2
Cela ne fonctionne que si vous ne vous souciez pas de l'endroit où le saut de ligne est ajouté.
JJJ
La question est de définir une position dans un mot spécifique où interrompre, pas comment activer la pause de travail en général.
Frode Evensen
-5

il y a beaucoup de discussions à ce sujet mais c'est devenu plus ou moins standard à utiliser &shy;

Le Surrican
la source
5
C'est un trait d'union souple, dont le demandeur ne voulait pas.
Escargot mécanique