web-dev-qa-db-fra.com

Pourquoi des symboles comme les apostrophes et les traits d'union sont-ils remplacés par des diamants noirs sur mon site Web?

Un site Web que j'ai créé présente quelques problèmes ... Sur l'une des pages, lorsqu'il y a une apostrophe (') ou un tiret (-), le symbole est remplacé par un étrange diamant noir avec un point d'interrogation au centre de il

Voici ce que je veux dire
screen

Il semble que cela se produise partout sur le site, où ces symboles apparaissent. Je n'ai jamais vu cela auparavant, quelqu'un peut-il m'expliquer?

Des suggestions sur la façon de résoudre ce problème seraient également grandement appréciées.

Voir http://test.rfinvestments.co.za/index.php?c=team pour un aperçu clair du problème.

27
Ortund

C'est un problème d'encodage. Vous devez définir le bon codage dans l'en-tête HTML via une balise META:

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">

Remplacez «ISO-8859-1» par votre codage (par exemple, «UTF-8»). Vous devez connaître le codage de vos fichiers HTML. Si vous utilisez un système Unix, tapez simplement file file.html et il devrait vous montrer le codage. Si cela n'est pas possible, vous devriez pouvoir trouver quelque part ce que l'encodage produit par votre éditeur.

41
joni

Vous devez modifier votre texte en «Texte brut» avant de le coller dans le document HTML. Cela ressemble à une erreur que j'ai eue auparavant en collant directement à partir de MS Word. 

MS Word et d'autres éditeurs de texte enrichi placent souvent des caractères masqués ou non valides dans votre code. Essayez d’utiliser &mdash; pour vos tirets, ou &rsquo; pour les apostrophes (etc.), afin d’éviter de recourir à votre codage de caractères.

6
Karlgoldstraw

J'ai le même problème dans mon application web asp.net. J'ai résolu par ceci link

Je viens de remplacer 'with &rsquo; texte comme ci-dessous et mon site dans le navigateur montre apostrophe sans rectangle autour de la question demander.

Original text in html page
Click the Edit button to change a field's label, width and type-ahead options

Replace text in html page
Click the Edit button to change a field&rsquo;s label, width and type-ahead options
2
Ajay2707

Regardez votre code HTML actuel et vérifiez que les symboles étranges ne sont pas originaires de là. Ce problème est survenu lorsque j'ai commencé à coder dans Notepad ++ à mi-chemin après le codage dans Notepad. Il me semble que l'ancienne version de Notepad que j'utilisais avait peut-être utilisé un encodage différent de celui de ++ UTF-8 de Notepad. Après avoir transféré mon code de Notepad vers Notepad ++, les apostrophes ont été remplacés par des symboles étranges. Il a donc simplement fallu supprimer les symboles de mon code Notepad ++. 

1
Leonid Barrington

Si vous modifiez le code HTML dans le Bloc-notes, vous devez utiliser "Enregistrer sous" et modifier la sélection par défaut "Codage:" en bas de la boîte de dialogue en UTF-8 .

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

Ceci définit de manière non ambiguë le bon jeu de caractères et informe le navigateur.

1
user6784003