web-dev-qa-db-ja.com

ウェブサイトでアポストロフィやハイフンなどの記号がブラックダイヤモンドに置き換えられるのはなぜですか?

私が作ったウェブサイトにはいくつかの問題があります...アポストロフィ(')またはダッシュ(-)、シンボルは、その中央に疑問符のある奇妙な黒いダイヤモンドに置き換えられます

ここに私が意味するものがあります
screen

これは、これらのシンボルが表示される場所であればどこでも発生しているようです。私はこれを見たことがありません、誰も私にそれを説明できますか?

修正方法の提案も大歓迎です。

http://test.rfinvestments.co.za/index.php?c=team を参照して、問題を明確に確認してください。

30
Ortund

これはエンコードの問題です。メタタグを介してHTMLヘッドに正しいエンコーディングを設定する必要があります。

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

「ISO-8859-1」をエンコードに関係なく置き換えます(例: 'UTF-8')。 HTMLファイルのエンコーディングを確認する必要があります。 Unixシステムを使用している場合は、file file.htmlと入力するだけで、エンコードが表示されます。これが不可能な場合は、エディターが生成するエンコードをどこかで見つけることができるはずです。

41
joni

HTMLドキュメントに貼り付ける前に、テキストを「プレーンテキスト」に変更する必要があります。これは、MS Wordから直接貼り付けることで以前に経験したエラーのように見えます。

MS Wordおよびその他のリッチテキストエディターは、多くの場合、非表示または無効な文字をコードに挿入します。 &mdash;をダッシュ​​に、または&rsquo;をアポストロフィ(など)に使用して、charエンコーディングに依存する必要性を排除してください。

6
Karlgoldstraw

Asp.net Webアプリケーションにも同じ問題があります。私はこれで解決しました リンク

私は 'を以下のような&rsquo;テキストに置き換えるだけで、ブラウザの私のサイトは質問のように四角形のないアポストロフィを表示します。

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

実際のhtmlコードを見て、奇妙なシンボルがそこから発生していないことを確認してください。この問題は、Notepadでのコーディングの途中でNotepad ++でコーディングを開始したときに発生しました。私が使用していたメモ帳の古いバージョンでは、メモ帳の++ UTF-8エンコードとは異なるエンコードが使用されていたようです。コードをNotepadからNotepad ++に転送した後、アポストロフィは奇妙な記号に置き換えられたため、Notepad ++コードから記号を削除するだけでした。

1

メモ帳でHTMLを編集する場合は、[名前を付けて保存]を使用し、ダイアログの下部にあるデフォルトの[エンコード:]選択をUTF-8に変更する必要があります。また含める必要があります-

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

これにより、明確な文字セットが明確に設定され、ブラウザに通知されます。

1
user6784003

アポストロフィを含むテキストをWord文書からHTMLコードにコピーしたときに、同じ問題が発生しました。

この問題を解決するために、HTMLで特定のWordを削除し、アポストロフィを含めて直接入力するだけでした。このアクションは、元のコピーアンドペーストアクトンを無効にし、新しく入力されたアポストロフィを正しく表示しました

0
Tester Man