2

ボタンにユニコードの下向き三角形を使用して、それらのボタンを選択するとドロップダウンが表示されることを示すWebページがあります。

したがって、CSSに三角形を追加しています:

    .icon:after {
        content:"▼";
    }
    .icon {
        width:12px;
        height:12px;
        margin: 3px;
        display: inline-block;
        cursor:default;
    }

ページ内のメタ タグは次のとおりです。

    <meta charset="UTF-8">
    <meta name="viewport" content="initial-scale=1.0, width=device-width" />
    <meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; chrome=1" >
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">

ただし、三角形は三角形として表示されず、次のように表示されます。Unicode 文字の代わりに奇妙なテキスト

このように表示される理由と修正方法を教えてください。

4

2 に答える 2

6

あらゆる種類のUnicode文字を使用して、あらゆる種類の文字を形作ることができます。たとえば、あなたの場合、次のようなものを使用する必要があります。

.icon:after {
    content:"\25bc";
}

または小さな三角形の場合:

.icon:after {
    content:"\25be";
}

このトリックは、完全にクロスブラウザ互換です。

于 2012-10-16T01:04:30.133 に答える
2

CSSルールが表示されるドキュメント(HTMLまたはCSSドキュメント)は、UTF-8以外のエンコーディング(おそらくISO-8859-1またはwindows-1252)、またはCSSドキュメントの場合はCSSドキュメントを指定するHTTPヘッダーとともに送信されます。エンコーディングをまったく指定しないでください。ブラウザに推測させます。

解決策は、HTTPヘッダーを変更してこれを修正することです。W3Cページの文字エンコードを参照してください。

HTTPヘッダーでエンコーディングが指定されていない場合ドキュメント自体の内部の文字セット宣言が有効になる可能性があります。

文字エスケープを使用すると症状を取り除くのに役立つ場合がありますが、将来の問題(誰かがドキュメントに奇妙な文字を追加した場合)を回避するには、エンコーディングの問題を修正するのが最善です。

于 2012-10-16T05:40:41.647 に答える