42

:before特殊文字を挿入しようとして、cssの疑似クラスをいじっていましたが、結果は私が望んでいたものではありません。

使用:

.read_more:before {
    content: "»";
    margin-right: 6px;
}

必要な文字を取得しましたが、その前にÂ文字があり、次を使用しています。

.read_more:before {
    content: "»";
    margin-right: 6px;
}

»私はhtmlページで完全を取得します。

:before問題を解決する方法はいくつか考えられますが、疑似クラスを使用したい場合、正しい構文はどうなるのか疑問に思いました。

ちなみに、私のDoctypeは次のとおりです。

<!doctype html>
<html lang="en">
4

6 に答える 6

62

これを試して

.read_more:before {
    content: "\00BB";
    margin-right: 6px;
}

\ 00BBは、その文字のUnicode表現です。合理的に機能するはずです=)

于 2010-11-10T17:08:37.837 に答える
24

答えはすでに言われていますが、私は参照したいと思います:

&raquo;私はhtmlページで完全を取得します。

これは、CSScontentプロパティがHTMLとして扱われないためです。DOMに追加されないため、HTML固有のマークアップは解析されません。文字を直接挿入するcontent: "Ԃ";か、Unicode表記を使用することができますcontent: "\0504";

于 2010-11-10T17:11:29.163 に答える
17

を指定してみてください<meta charset="utf-8">。理想的には、これをサーバーに設定します。

于 2010-11-10T17:02:01.560 に答える
10

この質問が出されてからしばらく経ちましたが、最近誰かがそれを必要とするかもしれない場合に備えて、私はそれに対する解決策を見つけました。

これはたくさんのグリフを含むチャートです必要なものを見つけて、その16進コードをコピーします。

次に、ここに貼り付けて変換します。

次のような値が得られます:\ 00E1(CSS値)

この値を「コンテンツ:」に貼り付けて、幸せになりましょう:)

于 2015-08-07T17:32:23.993 に答える
2

ブラウザが正しいテキストエンコーディングを使用していません。つまり、エディタと同じテキストエンコーディングを使用していません。Webサーバーからページを受信して​​いる場合、最善のアプローチは、サーバーが適切なContent-Typeヘッダーを送信していることを確認することです。Webサーバーのヘッダーを制御できない場合、またはローカルHTMLファイルを使用して多くのテストを行う場合は、使用しているエンコーディングとHTMLバージョンに適したタグをドキュメントに追加してください。UTF-8の使用をお勧めします。CSSファイル(HTMLとは別の場合)は同じエンコーディングを使用する必要があります。

于 2010-11-10T17:05:21.877 に答える
1

<head>セクション内のhtmlにこれを追加します

<meta HTTP-EQUIV="content-type" CONTENT="text/html; charset=UTF-8" />

しかし、htmlページがPHPでコーディングされている場合、私は次のことを好みます。

<?php
    header("Content-Encoding: utf-8");
    header("Content-type: text/html; charset=utf-8");
?>

また、UTF-8エンコーディングでファイル(css、html、php)を保存することを忘れないでください

于 2010-11-10T17:09:05.887 に答える