9

次のドイツ語の文字を正しく表示しようとしています: ß

残念ながら、「ss」と表示されます。私が見つけたいくつかの指示に従ってみました: HTML でドイツ語の文字を適切に表示するにはどうすればよいですか? 成功しませんでした。

メタタグを と に設定してみまし<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=utf-8">たが、<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>何も変わりませんでした。そのページのメモによると、utf-8 はあらゆる種類の非 ASCII 文字を同時に処理できます。

奇妙なことに、ü や ö 文字などの他のドイツ語文字は正常に表示されるため、これは ß 文字に固有のものであり、実際に ß を表示する代わりに ss として表示されます。

ブラウザが ß を ss に変更するのを防ぎ、代わりに実際に ß を表示するにはどうすればよいですか?


編集:「ß」の代わりに「ss」を表示していた行に text-transform:uppercase がありました。それを削除したら、うまくいきました!

4

3 に答える 3

10

私もこの問題を抱えていました。しばらくして、使用したフォント (Trebuchet MS だったと思います) が ß をサポートしていないことに気付き、それが理由で SS に変換されました。非常に単純ですが、私はそのような解決策を夢見ていませんでした..

編集:text-transformが に設定されている場合にのみ、その問題が発生しuppercaseます。Aßは自動的に に変換されSSます。

于 2013-06-14T00:29:42.853 に答える
1

この jQuery スクリプトを自分のページで使用しました

jQuery(document).ready(function(){
    jQuery('p, a, strong, b, em, i, label').each(function(){
        html = jQuery(this).html();
        if (jQuery(this).children().length == 0 && html.indexOf("no-uppercase") < 0) {
            jQuery(this).html( jQuery(this).html().replace( /ß/g, '<span class="no-uppercase">ß</span>' ) );
        }
    });
});

次に、cssファイルに追加できます

.no-uppercase {
   text-transform: none !important;
}

それは動作するはずです

于 2016-02-11T17:42:34.620 に答える
0

uft-8を試してみてください。また、この情報を php や asp などの他の言語で出力する場合、HTML エンコーディングでは不十分であることに注意してください。ヘッダーのコンテンツ タイプを aswel に設定する必要があります

于 2013-06-14T00:11:05.467 に答える