コアポイント
content
属性は、生成されたコンテンツをWebページに挿入するために、::before
および::after
、normal
、counter
、文字列、attr
、open-quote
、url
、initial
、inherit
などのさまざまな値をサポートします。 content
プロパティを使用して、テキスト、エンコードされた文字、メディアファイル、さらにはカウンターの値を挿入できます。たとえば、attr()
関数を使用して、指定されたプロパティの値を挿入できます。 open-quote
またはclose-quote
値はcontent
属性を使用して、オープンまたは閉じた引用符を生成します。 no-open-quote
またはno-close-quote
値を使用して、指定された要素から開いた引用符または閉じた引用符を削除できます。 content
属性は主に::before
および::after
pseudo-elementsで使用されますが、リストの弾丸または数字の外観をカスタマイズするために::marker
pseudo-elementsで使用することもできます。 あなたがフロントエンドの開発者である場合、あなたは擬似要素とCSSのcontent
プロパティについて聞いたことがあるでしょう。この記事は擬似要素の深いダイビングには入りませんが、コンセプトに慣れていない場合や簡単なレビューが必要な場合は、Smashing Magazineに関するLouis Lazarisの記事をチェックすることをお勧めします。
この記事では、content
属性に焦点を当てます。 cssのcontent
属性は、::before
および::after
pseudo-elementsで使用されます(単一結腸または二重結腸構文で使用できます)。このプロパティは、生成されたコンテンツをWebページに挿入するために使用され、すべての主要なブラウザで完全にサポートされています。
content
属性の基本的な構文
content
属性の構文は次のとおりで、各値が含まれています。
p::before { content: normal|counter|attr|string|open-quote|url|initial|inherit; }
またはattr()
で::before
値を使用するには、次のようなCSSを書く必要があります。
::after
p::after { content: " (" attr(title) ")"; }
attr()
またはnone
normal
がに設定されている場合、擬似要素は生成されません。
none
として計算されます。 normal
::before
::after
この方法は、すでに擬似要素を定義するネストされた要素に使用する場合がありますが、一部のコンテキストでは擬似エレメントを無効にしたいと思います。 none
p::before { content: normal; } p::after { content: none; }
この値はコンテンツを文字列に設定し、任意のテキストコンテンツにすることができます。非ラチン文字を使用する場合、文字をエンコードする必要があります。各例を見てみましょう。次のHTMLを検討してください:
p::before { content: normal|counter|attr|string|open-quote|url|initial|inherit; }
次のCSS:
p::after { content: " (" attr(title) ")"; }
ここで、テキストコンテンツをリスト項目の1つに挿入し、エンコードされた文字(この場合は著作権記号)を段落要素に挿入します。
文字列値は引用符で囲まれている必要があります。これは、単一の引用符または二重引用符である場合があります。
値:<uri>
<uri>
値は、特定のメディアを表示することに興味がある場合に非常に便利です。これは、画像などの外部リソースを指すことで行うことができます。何らかの理由でリソースまたは画像を表示できない場合、それは無視されるか、代わりにいくつかのプレースホルダーが使用されます。この値を示すいくつかのコードを見てみましょう。
これはhtml:
ですp::before { content: normal; } p::after { content: none; }
これは、SitePointのお気に入りといくつかのテキストを示すCSSです。
<h2>Tutorial Categories</h2> <ol> <li>HTML and CSS</li> <li class="new">Sass & Less</li> <li>JavaScript</li> </ol> <p class="copyright">SitePoint, 2015</p>
値:またはcounter()
counters()
この値は、
content
最初の関数counter()
の場合、生成されたテキストは、この擬似要素範囲内で指定した名前の最も内側のカウンターの値です。デフォルトでは、小数でフォーマットされますが、ローマ数字でフォーマットすることもできます。 counters()
、counter()
、または
counters(name, string)
以下は、カウンターの使用方法の例です。
none
inherit
これはCSS:initial
です
これにより、順序付けられたリストと同様に、生成されたコンテンツを使用してアイテムに番号が付けられます。この場合、注文されたリストを簡単に使用できます。これらのタイプのカウンターは、番号が付けられているアイテムが他の要素間に散らばっている場合、はるかに便利です。
.new::after { content: " New!"; color: green; } .copyright::before { content: "<pre class="brush:php;toolbar:false"><code class="language-html"><a class="sp" href="https://www.php.cn/link/9a4b930f7a36153ca68fdf211c8836a7">SitePoint</a>
値:
.sp::before { content: url(https://www.php.cn/link/9a4b930f7a36153ca68fdf211c8836a7favicon.ico); }
前述のように、
関数は、指定されたプロパティの値を挿入します。これは唯一のパラメーターです。関連する要素に属性がない場合、空の文字列が返されます。
attr()
これは例です:
上記のHTMLを使用して、次のCSSは、リンクテキストの横にあるブラケットにattr()
属性値を表示します。
このトリックは、印刷されたWebページにリンクを表示できるように、印刷スタイルのシートでよく使用されます。
<h2>Name of First Four Planets</h2> <p class="planets">Mercury</p> <p class="planets">Venus</p> <p class="planets">Earth</p> <p class="planets">Mars</p>
値:href
または
.planets { counter-increment: planetIndex; } .planets::before { content: counter(planetIndex) ". "; }
が設定されている場合、content
属性はオープン見積書または閉じた引用を生成します。通常、<q>
要素で使用されますが、任意の要素で使用できます。したがって、次のことを行うことができます
p::before { content: normal|counter|attr|string|open-quote|url|initial|inherit; }
値がない場合、生成されません。何でも。 close-quote
::after
::before
値:open-quote
または
no-open-quote
値は、指定された要素から開いた引用符を削除し、no-close-quote
値は閉じた引用符を削除します。これらの値がどのように役立つか疑問に思うかもしれません。次のHTMLをご覧ください:
前の段落では、スピーカーは誰か(「賢者...」)を引用し、この人は他の誰か(「それらは...」)を引用します。したがって、私たちの引用は3層にネストされています。構文的には、この問題に対処する正しい方法があります。生成されたコンテンツを使用する場合、引用符が正しくネストされるようにする方法を以下に示します。
no-open-quote
no-close-quote
最初のセレクターは、
p::after { content: " (" attr(title) ")"; }
および
値を使用してそれらをオーバーライドできます:p::before { content: normal; } p::after { content: none; }
quotes
この場合、引用符の2番目のレイヤーに
no-open-quote
no-close-quote
結論
<h2>Tutorial Categories</h2> <ol> <li>HTML and CSS</li> <li class="new">Sass & Less</li> <li>JavaScript</li> </ol> <p class="copyright">SitePoint, 2015</p>
このチュートリアルが、noquotes
プロパティの各価値と、さまざまなシナリオでそれらを使用する方法をよりよく理解するのに役立つことを願っています。
FAQ(FAQ)
CSSコンテンツプロパティとの使用方法は何ですか? content
プロパティは、生成されたコンテンツをページのレイアウトに挿入できる強力なツールです。通常、HTMLに含めるのではなく、CSSを介して装飾的なコンテンツを追加するおよび
::before
および::after
以外の要素で使用できます。 csscontent
属性は、主に::before
および::after
pseudo-elementsで使用されます。ただし、リスト項目のタグボックスを表す::marker
pseudo-elementで使用することもできます。これにより、リストの箇条書きまたは番号の外観をカスタマイズできます。
csscontent
プロパティは、attr()
関数を使用して表示できます。たとえば、ユーザーが実際のURLを見ることができるように、リンクのhref
プロパティの値を表示するために使用できます。構文はcontent: attr(href)
になります。
はい、CSScontent
プロパティをurl()
関数を使用して画像に挿入できます。画像は、::before
または::after
pseudo-elementが配置されているところに挿入されます。たとえば、content: url(image.jpg)
はimage.jpgという名前の画像を挿入します。
csscontent
プロパティは、counter()
またはcounters()
関数を使用して表示できます。これは、ドキュメントのタイトルまたはセクションを自動的に番号付けするのに役立ちます。最初に、counter-reset
プロパティを使用してカウンターを作成またはリセットし、counter-increment
プロパティを使用してインクリメントします。その後、content: counter(myCounter)
を使用して、カウンターの現在の値を表示できます。
はい、Unicodeを使用してCSScontent
属性の特殊文字を使用できます。たとえば、content: “22”
は弾丸を挿入します。常にbackslash()unicodeから始めることを忘れないでください。
属性を使用することをお勧めします。 content
属性を使用してHTMLを挿入できません。テキスト、画像、カウンター、属性値のみを挿入できます。 HTMLを挿入する必要がある場合は、これをHTMLドキュメントで直接実行するか、JavaScriptを使用する必要があります。 content
すべての最新のブラウザは、CSS content
属性を広くサポートしています。ただし、インターネットエクスプローラーの古いバージョンでは完全にサポートされていない場合があります。
いいえ、CSScontent
属性はアニメーションではありません。これは、値の範囲を持つプロパティではなく、特定の値が設定されているためです。アニメーションを作成する必要がある場合は、アニメーション化できる他のCSSプロパティを使用することを検討してください。 opacity
以上がCSSの理解&#x27;コンテンツ&#x27;財産の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。