Tiret et Retour-Charot. [Résolu]

Messages postés
135
Date d'inscription
mardi 4 juillet 2017
Statut
Membre
Dernière intervention
17 novembre 2019
-
Salut à tous,

Je suis confronté à un problème dans une class .CSs de mes pages HTML.

Avec:
<span class="cmt1"><p id="main">Est-il possible de ne pas avoir de retour-chariot !
</p>


#main {
  margin-left: 5px;
  background-image: url("pic-deco/cmtback0.jpg");
  background-size: cover;
  padding: 5px 25px 0px 5px;
  text-align: left;
  width: 280px;
  height: 100px;
  overflow: auto;
}



Cela me donne:
Est-
il possible de ne pas avoir de retour-
chariot !


ou sur la page:


C'est fort embêtent que ce symboles effectue une césure alors qu'il reste plein de place !
Car, les phrases sans tiret sous gérées correctement.
J'ai remplacé les tirets simple en code utf8 "–" et "—" (le grand tiret !), mais c'est la même chose.

Avec un ~ cela passe bien; mais ça fait bizarre.

Y a~t~il un moyen de supprimer ce formatage automatique dans le fichier déco… ?

Merci pour vos futures réponses.
Afficher la suite 

7 réponses

0
Merci
Il suffit de modifier la propriété CSS "width" de "#main" afin que la totalité du texte rentre dans la largeur.
Commenter la réponse de JPRVB6
Messages postés
135
Date d'inscription
mardi 4 juillet 2017
Statut
Membre
Dernière intervention
17 novembre 2019
2
0
Merci
Salut JPRVB6 ,

Si je comprends bien, le Width est trop juste (280 pixels) ou à zéro… ce qui implique un retour à la ligne!
Attends, pourquoi "***-Roger" n'est pas mis sur une nouvelle ligne?

Il y aurai un test entre "*-*" et "*-<espace>" …
En supprimant l'espace après le tiret cela peut peut-être formater le texte correctement.
Je regarde dans ma base de donnée, et je te confirme.

Merci pour ton ouverture d'esprit.
Commenter la réponse de JeuDuTaquin
Messages postés
135
Date d'inscription
mardi 4 juillet 2017
Statut
Membre
Dernière intervention
17 novembre 2019
2
0
Merci
Salut JPRVB6 ,

Bon, pas d'espace, la majuscule et un espace après le "l' Humour" n'y font rien.

Si j'augment le width, ça va déborder de la page, et ce sera pas très esthétique.
Il faudra donc que je place des espaces à la demande, mais c'est pas trop professionnel.
Ou un <BR> au bon endroit, mais ça me fait plein de textes à bricoler… surtout que ces pages ne sont pas dynamiques et précompilées.

Bizarre ce bogue de mise en page.
Commenter la réponse de JeuDuTaquin
Messages postés
135
Date d'inscription
mardi 4 juillet 2017
Statut
Membre
Dernière intervention
17 novembre 2019
2
0
Merci
Heu… ça peut venir du codage des caractères…
Tous les espaces sont en [& nbsp ;], espaces insécables.
Je dois faire le test en espaces normaux.
Commenter la réponse de JeuDuTaquin
Messages postés
135
Date d'inscription
mardi 4 juillet 2017
Statut
Membre
Dernière intervention
17 novembre 2019
2
0
Merci
Salut,
Zut !
C'était ça le problème…
Le codage ISO des espaces désorganisaient le formatage.
En plus, en plaçant des espaces simples, cela va réduire la taille de la page html.

Merci encore JPRVB6.

Même si ta réponse ne m'a pas aidé directement, ça m'a permis de me replonger sur ce problème.

Il faut que je change ma routine de conversion de texte vers le ISO...
Commenter la réponse de JeuDuTaquin
Messages postés
135
Date d'inscription
mardi 4 juillet 2017
Statut
Membre
Dernière intervention
17 novembre 2019
2
0
Merci
Routine VB corrigée: (§ à remplacer par & (pb affichage))
Function Char2ISO(myChar As String) As String
If myChar = "" Then Exit Function

If myChar = "|" Then Char2ISO = ",": Exit Function

Select Case myChar
Case "µ"
Char2ISO = "§micro;"
Case "«"
Char2ISO = "§laquo;"
Case "»"
Char2ISO = "§raquo;"
Case "¤"
Char2ISO = "§curren;"
'Case "§"
'Char2ISO = "§amp;"
Case Chr(34)
Char2ISO = "§quot;"
Case " "
Char2ISO = " " '   Was "§nbsp;"
Case "®"
Char2ISO = "§reg;"
Case "©"
Char2ISO = "§copy;"
Case "À"
Char2ISO = "§Agrave;"
Case "Á"
Char2ISO = "§Aacute;"
Case "Â"
Char2ISO = "§Acirc;"
Case "Ã"
Char2ISO = "§Atilde;"
Case "Ä"
Char2ISO = "§Auml;"
Case "Å"
Char2ISO = "§Aring;"
Case "Æ"
Char2ISO = "§Aelig;"
Case "æ"
Char2ISO = "§aelig;"
Case "à"
Char2ISO = "§agrave;"
Case "á"
Char2ISO = "§aacute;"
Case "â"
Char2ISO = "§acirc;"
Case "ã"
Char2ISO = "§atilde;"
Case "ä"
Char2ISO = "§auml;"
Case "å"
Char2ISO = "§aring;"
Case "Ç"
Char2ISO = "§Ccedil;"
Case "ç"
Char2ISO = "§ccedil;"
Case "È"
Char2ISO = "§Egrave;"
Case "É"
Char2ISO = "§Eacute;"
Case "Ê"
Char2ISO = "§Ecirc;"
Case "Ë"
Char2ISO = "§Euml;"
Case "è"
Char2ISO = "§egrave;"
Case "é"
Char2ISO = "§eacute;"
Case "ê"
Char2ISO = "§ecirc;"
Case "ë"
Char2ISO = "§euml;"
Case "Ì"
Char2ISO = "§Igrave;"
Case "Í"
Char2ISO = "§Iacute;"
Case "Î"
Char2ISO = "§Icirc;"
Case "Ï"
Char2ISO = "§Iuml;"
Case "ì"
Char2ISO = "§igrave;"
Case "í"
Char2ISO = "§iacute;"
Case "î"
Char2ISO = "§icirc;"
Case "ï"
Char2ISO = "§iuml;"
Case "Ò"
Char2ISO = "§Ograve;"
Case "Ó"
Char2ISO = "§Oacute;"
Case "Ô"
Char2ISO = "§Ocirc;"
Case "Õ"
Char2ISO = "§Otilde;"
Case "Ö"
Char2ISO = "§Ouml;"
Case "ò"
Char2ISO = "§ograve;"
Case "ó"
Char2ISO = "§oacute;"
Case "ô"
Char2ISO = "§ocirc;"
Case "õ"
Char2ISO = "§otilde;"
Case "ö"
Char2ISO = "§ouml;"
Case "Ø"
Char2ISO = "§Oslash;"
Case "ø"
Char2ISO = "§oslash;"
Case "Ù"
Char2ISO = "§Ugrave;"
Case "Ú"
Char2ISO = "§Uacute;"
Case "Û"
Char2ISO = "§Ucirc;"
Case "Ü"
Char2ISO = "§Uuml;"
Case "ù"
Char2ISO = "§ugrave;"
Case "ú"
Char2ISO = "§uacute;"
Case "û"
Char2ISO = "§ucirc;"
Case "ü"
Char2ISO = "§uuml;"
Case "Ý"
Char2ISO = "§Yacute;"
Case "Ÿ"
Char2ISO = "§Yuml;"
Case "ý"
Char2ISO = "§yacute;"
Case "ÿ"
Char2ISO = "§yuml;"
Case "Ñ"
Char2ISO = "§Ntilde;"
Case "ñ"
Char2ISO = "§ntilde;"
Case "þ"
Char2ISO = "§Thorn;"
Case "Ð"
Char2ISO = "§Eth;"
Case "ð"
Char2ISO = "§eth;"
Case "Þ"
Char2ISO = "§thorn;"
Case "ß"
Char2ISO = "§szlig;"
Case "œ"
Char2ISO = "§oelig;"
Case "Œ"
Char2ISO = "§OElig;"
Case Else
Char2ISO = myChar
End Select
End Function
Commenter la réponse de JeuDuTaquin
0
Merci
Salut, peut-être plus simple de changer la méthode d'insertion du texte pour transformer les  nbsp (qui sont à éviter depuis un bon moment d'ailleurs) en simple espace.
Sinon ça donne quoi en
text-align:justify;
? ou au pire en utilisant <PRE> mais bon ce n'est pas très recommandé comme solution car cette balise est fortement dépréciée.
JeuDuTaquin
Messages postés
135
Date d'inscription
mardi 4 juillet 2017
Statut
Membre
Dernière intervention
17 novembre 2019
2 -
Salut PinballWizard,
Oui, la méthode d'insertion du texte doit donc se faire par l'intermédiaire d'un script qui remplacera les espaces insécable.
Mais, dans mon cas, la page est crée par le biais d'une base de donnée statique gérée par un appli maison en VBasic.
Donc, l'utilisation des espaces "spéciaux" ont était bannis directement par le compilateur de page HTML.
Le côté sournois de ce caractère est qu'il est impossible de savoir si cet espace est normal ou insécable en visualisation UTF8, seule la page source peut nous l'indiquer.
Et dans ce cas, les caractères de césure sont prioritaires par rapport aux espaces… ce qui cause un affichage corrompu.
Merci pour ces réponses.
Commenter la réponse de pinballWizard