178 votes

Un tiret conditionnel en HTML (<wbr> </wbr> vs.)

Comment résoudre le problème avec les doux traits d'union sur vos pages web? Dans un texte, il peut être long termes lesquelles vous pouvez saut de ligne avec un trait d'union. Mais vous ne voulez pas le trait d'union de montrer si tout le monde est sur la même ligne.

Selon les commentaires sur cette page, <wbr> est un non standard", la soupe de tags inventé par Netscape". Il semble que l' &shy; a ses problèmes avec le respect des standards ainsi. Il semble y avoir aucun moyen d'obtenir une solution de travail pour tous les navigateurs.

Qui est votre chemin pour la manipulation douce des traits d'union et pourquoi avez-vous choisi? Est-il j'ai préféré la solution ou les meilleures pratiques?


Voir SI la Discussion ici.

147voto

Marco Points 9118

Malheureusement, `` de prise en charge est donc incompatible entre les navigateurs qu’il ne peut pas vraiment être utilisé.

QuirksMode a raison : il n’y a aucune bonne façon d’utiliser des tirets douces en HTML dès maintenant. Voir ce que vous pouvez faire pour aller sans eux.

edit de 2013 : selon QuirksMode, `` maintenant fonctionne/est pris en charge sur tous les principaux navigateurs.

34voto

Dominik Points 408

Il y a un effort en cours pour normaliser la césure en CSS3.

Certains navigateurs modernes, notamment Safari et Firefox, déjà en charge cette. Voici une bonne et jusqu'à la date de référence sur la prise en charge du navigateur.

Une fois le CSS de césure la mise en oeuvre de tous les pays, qui serait la meilleure solution. En attendant, je peux vous recommander Hyphenator - un script JS que les chiffres sur la façon de traiter votre texte dans la manière la plus appropriée pour un navigateur en particulier.

Hyphenator:

  • s'appuie sur les Franklin M. Liangs algorithme de césure, communément connu à partir de LaTeX et OpenOffice.
  • utilise CSS3 césure où il est disponible,
  • insère automatiquement &shy; sur la plupart des autres navigateurs,
  • prend en charge plusieurs langues,
  • est hautement configurable,
  • gracieusement retombe dans le cas où le javascript n'est pas activé.

Je l'ai utilisé et il fonctionne très bien!

22voto

Paramaeleon Points 1030

J'utilise &shy;, insérés à la main si nécessaire.

Je trouve toujours dommage que des personnes n'utilisent pas de techniques parce qu'il y a-peut-être vieux ou étrange-browser qui ne gère pas la façon dont ils ont été spécifiés. J'ai trouvé que l' &shy; fonctionne correctement dans les deux dernières navigateurs Internet Explorer et Firefox, qui devrait être enaugh. Vous pouvez inclure un contrôle de navigateur de dire aux gens d'utiliser quelque chose de maturité ou de continuer à leur propre risque, si ils viennent avec un certain étrange navigateur.

Syllabification n'est pas facile et je ne peux pas recommander en la laissant un peu de Javascript. C'est une langue spécifique sujet et peut-être besoin d'être carefuelly révisé par le deskman si vous ne voulez pas transformer votre texte irritant. Certaines langues, comme l'allemand, la forme des mots composés et sont susceptibles de conduire à la décomposition des problèmes. E. g. Spargelder (germe. économisé de l'argent, pl.) peut, par syllabification règles, être enveloppé dans deux endroits (Spar-gel-der). Toutefois, en l'enveloppant dans la deuxième position, tourne la première partie de montrer que Spargel- (germe. les asperges), l'activation d'une complètement concept trompeur dans la tête du lecteur, et par conséquent devrait être évitée.

Et que dire de la chaîne d' Wachstube? Il peut signifier soit la "salle des gardes' (Wach-stu-be) ou "tube de cire' (Wachs-tu-be). Vous pouvez probablement trouver d'autres exemples dans d'autres langues. Vous devriez viser à fournir un environnement dans lequel les deskman peut être pris en charge dans la création d'une syllabified texte, la preuve de la lecture des critiques mot.

2voto

anthonyv Points 1728

Il s’agit d’une solution crossbrowser que je regardais tout à l’heure qui s’exécute sur le client et l’utilisation de jQuery :

0voto

Navigateurs web semble parfois être plus indulgent si vous utilisez la chaîne Unicode plutôt que la entité.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X