亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

目次
ルールネスト
カスタムセレクター
:matches()プラグインは、新しい
カスタムメディア
ホームページ ウェブフロントエンド CSSチュートリアル PostCSSガイドは、セレクターとメディアクエリを改善します

PostCSSガイドは、セレクターとメディアクエリを改善します

Feb 21, 2025 am 10:05 AM

<p> <img src="/static/imghw/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/174010351218537.jpg" class="lazy" alt="The PostCSS Guide to Improving Selectors and Media Queries "></p> <p><strong>コアポイント</strong></p> <ul> <li>PostCSSは、最新のCSS機能にポリフィルを提供するさまざまなプラグインを提供し、開発者が広範なブラウザサポートがない場合でも新しい機能を試してみることができます。 </li> <li> <code>postcss-nesting</code>プラグインは、W3Cネストされたモジュールの提案に従ってネストされたスタイルルールを?qū)g裝し、親セレクターを參照して新しい<code>&amp;amp;</code>ネストされたセレクターを?qū)毪筏蓼埂?</li> <li> <code>postcss-custom-selectors</code>プラグインを使用すると、変數(shù)の重複セレクターを定義し、コードの複製を減らし、コードメンテナンスを改善できます。 </li> <li> <code>postcss-custom-media</code>および<code>postcss-media-minmax</code>プラグインは、メディアクエリを改善して、スタイルシートの使用を容易にし、重複を減らすことができます。 </li> </ul> <p>CSS仕様の最新の変更には、いくつかの興味深い機能が紹介されています。殘念ながら、これらの機能のいくつかはまだドラフト段階にありますが、他の機能は広範なブラウザのサポートを欠いています。多くの場合、新しい提案は、ブラウザによってレビュー、受け入れ、実裝されるまでに時間がかかります。ただし、待ち時間を節(jié)約し、PostCSSを使用してこれらの機能の一部を試すことができます。 </p> <p>PostCSSには、最新のCSS機能にポリフィルを?qū)g裝するように設計されたさまざまなプラグインがあります。これらのプラグインは非常に広いため、1つの記事ですべてのプラグインをカバーすることは困難です。代わりに、セレクターとメディアクエリに新しい機能を追加することに焦點を當てたプラグインに焦點を當てます。多くのプラグインを使用すると、スタイルシートの構(gòu)造を大幅に改善できますが、他のプラグは上部にきれいな構(gòu)文砂糖を追加するだけです。 </p> <p>この記事では、PostCSの構(gòu)成とインストールを詳細に紹介しません。これは、「PostCSSから始まる」および「PostCSSによるCSS品質(zhì)の向上」で説明されています。簡単な參照として、GitHubのPostCSSページをチェックすることもできます。 </p> <h2 id="ルールネスト">ルールネスト</h2> <p>最も基本的な機能から始めましょう。すべてのプリプロセッサユーザーに馴染みがあります。 <code>postcss-nesting</code>プラグインは、W3Cネストされたモジュールの提案に従ってネストするスタイルルールを?qū)g裝します。 </p> <p>提案では、親セレクターを參照する新しい<code>&amp;amp;</code>ネストされたセレクターが導入されます。少ないまたはSASSに反して、このセレクターは仕様によって必要であり、ネストを有効にするためにセレクターチェーンで最初の基本セレクターでなければなりません。ネストされたセレクターが含まれていないセレクターは無視されます。たとえば、</p> <pre class='brush:php;toolbar:false;'>.article { color: #333; &amp;amp;amp;.popular { background: #DDD; } &amp;amp;amp; .title { font-weight: bold; } }</pre> <p>は次のように変換されます </p> <pre class='brush:php;toolbar:false;'>.article { color: #333 } .article.popular { background: #DDD } .article .title { font-weight: bold }</pre>指定されているように<p>セレクターを使用しないため、次のコードが無効であることに注意してください。 <code>&amp;amp;</code> </p> <pre class='brush:php;toolbar:false;'>.article { color: #333; /* no nested-selector */ .popular { background: #DDD; } /* the nested selector is not the fist selector in the chain */ .latest &amp;amp;amp;amp; { border: 1px solid red; } }</pre>親セレクターをセレクターのどこにでも挿入できるようにするため(最初だけでなく)、提案はネストされたATルール<p>を使用する代替構(gòu)文を定義します。前の例で<code>@nest</code>セレクターを次のように修正できます。 <code>.latest &amp;amp;amp;</code> </p>これは次のようにコンパイルされます <pre class='brush:php;toolbar:false;'>.article { color: #333; @nest .latest &amp;amp;amp;amp; { border: 1px solid red; } }</pre> <p></p>文法も<pre class='brush:php;toolbar:false;'>.article { color: #333 } .latest .article { border: 1px solid red }</pre>よりも表現(xiàn)力があります。 <p><h2 id="カスタムセレクター">カスタムセレクター</h2> <p> CSSを書くとき、私たちは多くの重複したセレクターを書く傾向があります。これは、すべてのリンクまたは任意のボタンを選択する?yún)g純なボイラープレートコード、または繰り返し繰り返しを必要とするより複雑なセレクターである可能性があります。これにより、多くのコードの重複と関連するすべてのコードメンテナンスの問題が導入される場合があります。新しいCSS拡張仕様は、セレクターを変數(shù)に保存し、スタイルシートの他の部分から參照する方法を紹介します。したがって、繰り返しセレクターは一度だけ定義する必要があり、その後、他の場所で安全に再利用できます。 </p> <p>postcssには、この機能を?qū)g裝する<code>postcss-custom-selectors</code>プラグインがあります。これは、すべてのタイトル要素セレクターを定義する簡単な例です。 </p> <pre class='brush:php;toolbar:false;'>.article { color: #333; &amp;amp;amp;.popular { background: #DDD; } &amp;amp;amp; .title { font-weight: bold; } }</pre>次のようにコンパイルされます <p> </p>カスタムセレクターは擬似クラスとして実裝されているため、構(gòu)文は奇妙に見えます<pre class='brush:php;toolbar:false;'>.article { color: #333 } .article.popular { background: #DDD } .article .title { font-weight: bold }</pre>。 <p> <code>:--</code>カスタムセレクターは、基本的なセレクターで効果的に使用できます。たとえば、</p> <p> </p>にコンパイルされています:<pre class='brush:php;toolbar:false;'>.article { color: #333; /* no nested-selector */ .popular { background: #DDD; } /* the nested selector is not the fist selector in the chain */ .latest &amp;amp;amp;amp; { border: 1px solid red; } }</pre> <p> </p>複數(shù)のカスタムセレクターを単一のセレクターに組み合わせて、より複雑な配置をとることもできます。 <pre class='brush:php;toolbar:false;'>.article { color: #333; @nest .latest &amp;amp;amp;amp; { border: 1px solid red; } }</pre> <p> </p>は生成されます:<pre class='brush:php;toolbar:false;'>.article { color: #333 } .latest .article { border: 1px solid red }</pre> <p> </p>この例は少し誇張されているかもしれませんが、この機能の力を非常によく示しています。 <pre class='brush:php;toolbar:false;'>@custom-selector :--heading h1, h2, h3, h4, h5, h6; :--heading { font-weight: bold; }</pre> <p>新しい擬似クラス</p> セレクターレベル4の仕様では、多くの新しい擬似クラスを紹介しますが、ほとんどの擬似クラスの動的な性質(zhì)により、PostCSプラグインとして利用できるものはごくわずかです。 <h2> </h2><p>pseudoclass </p> <h3 id="code-matches-code-プラグインは-新しい"><code>:matches()</code>プラグインは、新しい</h3>pseudoクラスを?qū)g裝します。これは、パラメーター內(nèi)のセレクターに一致する要素のみをフィルタリングする関數(shù)クラスです。複數(shù)のセレクターを渡す場合、要素は少なくともそのうちの1つと一致する必要があります。要するに:<p> <code>postcss-selector-matches</code> <code>:matches()</code>にコンパイルされています:</p> <pre class='brush:php;toolbar:false;'>h1, h2, h3, h4, h5, h6 { font-weight: bold; }</pre> <p></p>pseudoclass <pre class='brush:php;toolbar:false;'>.article :--heading .author { color: blue; }</pre> 特定のパラメーターと一致しない擬似クラスフィルタリング要素。 <h3>プラグインに実裝されています。 <code>:not()</code> </h3> <p>結(jié)果は次のとおりです <code>:not()</code> <code>postcss-selector-not</code></p>pseudoclass <pre class='brush:php;toolbar:false;'>.article h1 .author, .article h2 .author, .article h3 .author, .article h4 .author, .article h5 .author, .article h6 .author { color: blue; }</pre> <p></p>プラグインは<pre class='brush:php;toolbar:false;'>@custom-selector :--links a, a:focus, a:visited, a:hover, a:active; article :--heading :--links { color: #333; }</pre> pseudoクラスを?qū)g裝します。それは、<h3>擬似クラスの周りの混亂を解決するのに役立つために導入されました。後者とは異なり、訪問したリンクを含むすべてのリンクと一致します。 <code>:any-link</code> </h3> <p>にコンパイルされています:<code>postcss-pseudo-class-any-link</code> <code>:any-link</code> <code>:link</code>メディアクエリの改善</p> <pre class='brush:php;toolbar:false;'>article h1 a, article h2 a, article h3 a, article h4 a, article h5 a, article h6 a, article h1 a:focus, article h2 a:focus, article h3 a:focus, article h4 a:focus, article h5 a:focus, article h6 a:focus, article h1 a:visited, article h2 a:visited, article h3 a:visited, article h4 a:visited, article h5 a:visited, article h6 a:visited, article h1 a:hover, article h2 a:hover, article h3 a:hover, article h4 a:hover, article h5 a:hover, article h6 a:hover, article h1 a:active, article h2 a:active, article h3 a:active, article h4 a:active, article h5 a:active, article h6 a:active { color: #333; }</pre>メディアクエリを使いやすくするためのPostCSSのためのライブラリにプラグインがあります。それらは<p>と</p>です。 <pre class='brush:php;toolbar:false;'>button:matches(:hover, :focus) { color: red; }</pre> <h2 id="カスタムメディア">カスタムメディア</h2> <p>メディアクエリを書くことは、通常のセレクターと同じ問題を作成します - それらはしばしばスタイルシートで繰り返されます。おそらく通常のセレクターよりも頻繁です。幸いなことに、カスタムセレクターに似たソリューションがあります。 <code>postcss-custom-media</code>プラグインは、メディアクエリを変數(shù)に保存する機能を高めるカスタムメディアクエリ仕様を?qū)g裝します。 <code>postcss-media-minmax</code> </p>構(gòu)文はカスタムセレクターに非常に似ています。簡単な例を次に示します:<h3> </h3> <p>にコンパイルされています:<code>postcss-custom-media</code><pre class='brush:php;toolbar:false;'>.article { color: #333; &amp;amp;amp;.popular { background: #DDD; } &amp;amp;amp; .title { font-weight: bold; } }</pre> <p>もちろん、複數(shù)のカスタムメディアクエリを一度に使用できます。 </p> <pre class='brush:php;toolbar:false;'>.article { color: #333 } .article.popular { background: #DDD } .article .title { font-weight: bold }</pre>は生成されます:<p> </p> <pre class='brush:php;toolbar:false;'>.article { color: #333; /* no nested-selector */ .popular { background: #DDD; } /* the nested selector is not the fist selector in the chain */ .latest &amp;amp;amp;amp; { border: 1px solid red; } }</pre>ご覧のとおり、「中ビューポート」の定義を変更して、関連するCSSコードを見つける方がはるかに簡単になりました。 <p> </p>最小および最大構(gòu)文<h3> </h3>メディアの質(zhì)問は素晴らしいものですが、最小および最大の文法はコミュニティから多くの批判を受けています。 W3Cは、比較演算子を使用して、より直感的な構(gòu)文を?qū)毪工毪长趣菑甏黏筏蓼埂?<p>プラグインは、<code>postcss-media-minmax</code>、<code>></code>、<code>>=</code>、<code><</code>、<code><=</code>のサポートを追加します。 </p> <p>(記事の殘りの部分は記事の長さのために省略されていますが、畫像リンクは変更されていません)</p>

以上がPostCSSガイドは、セレクターとメディアクエリを改善しますの詳細內(nèi)容です。詳細については、PHP 中國語 Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當する法的責任を負いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國語版

SublimeText3 中國語版

中國語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

ロードスピナーとアニメーションを作成するためのCSSチュートリアル ロードスピナーとアニメーションを作成するためのCSSチュートリアル Jul 07, 2025 am 12:07 AM

CSSロード回転子を作成するには3つの方法があります。1。境界の基本回転子を使用して、HTMLとCSSを介してシンプルなアニメーションを?qū)g現(xiàn)します。 2。複數(shù)のポイントのカスタム回転子を使用して、異なる遅延時間を経てジャンプ効果を?qū)g現(xiàn)します。 3.ボタンに回転子を追加し、JavaScriptを介してクラスを切り替えて、読み込みステータスを表示します。各アプローチは、ユーザーエクスペリエンスを向上させるために、色、サイズ、アクセシビリティ、パフォーマンスの最適化などのデザインの詳細の重要性を強調(diào)しています。

CSSブラウザの互換性の問題とプレフィックスに対処します CSSブラウザの互換性の問題とプレフィックスに対処します Jul 07, 2025 am 01:44 AM

CSSブラウザの互換性とプレフィックスの問題に対処するには、ブラウザサポートの違いを理解し、ベンダーのプレフィックスを合理的に使用する必要があります。 1. FlexBoxやグリッドのサポート、位置:粘著性の無効、アニメーションのパフォーマンスなどの一般的な問題を理解することは異なります。 2. CANIUSE確認機能サポートステータスを確認します。 3. -webkit-、-moz-、-ms-、-o-およびその他のメーカーのプレフィックスを正しく使用します。 4.自動的にプレフィックスを追加するためにAutoprefixerを使用することをお勧めします。 5. PostCSSをインストールし、ターゲットブラウザを指定するようにBrowserSlistを構(gòu)成します。 6.建設中の互換性を自動的に処理します。 7. Modernizr検出機能は、古いプロジェクトに使用できます。 8.すべてのブラウザの一貫性を追求する必要はありません、

スタイリングは、CSSとは異なるリンクを訪問しました スタイリングは、CSSとは異なるリンクを訪問しました Jul 11, 2025 am 03:26 AM

アクセスしたリンクのスタイルを設定すると、特にコンテンツ集約型のWebサイトでユーザーエクスペリエンスを向上させることができ、ユーザーがより良いナビゲートを支援します。 1。CSSを使用してください:訪問した擬似クラスは、色の変化などの訪問されたリンクのスタイルを定義します。 2。ブラウザは、プライバシーの制限により、いくつかの屬性の変更のみを許可することに注意してください。 3.突然の狀態(tài)を避けるために、色の選択は全體的なスタイルと調(diào)整する必要があります。 4.モバイル端子はこの効果を表示しない場合があり、アイコン補助ロゴなどの他の視覚的なプロンプトと組み合わせることをお勧めします。

CSSクリップパスでカスタムシェイプを作成します CSSクリップパスでカスタムシェイプを作成します Jul 09, 2025 am 01:29 AM

CSSのクリップパス屬性を作物要素に使用して、寫真やSVGに依存することなく、三角形、円形ノッチ、ポリゴンなどのカスタム形狀になります。その利點には、次のものが含まれます。1。円、楕円、ポリゴンなどのさまざまな基本的な形狀をサポートします。 2。レスポンシブ調(diào)整とモバイル端子に適応可能。 3.アニメーションが簡単で、HoverまたはJavaScriptと組み合わせて動的効果を?qū)g現(xiàn)できます。 4.レイアウトフローには影響せず、ディスプレイエリアのみを収穫します。一般的な使用法は、円形のクリップパス:円(50pxatcenter)および三角クリップパス:ポリゴン(50%0%、100 0%、0 0%)などです。知らせ

ディスプレイの違いは何ですか:インライン、ディスプレイ:ブロック、ディスプレイ:インラインブロック? ディスプレイの違いは何ですか:インライン、ディスプレイ:ブロック、ディスプレイ:インラインブロック? Jul 11, 2025 am 03:25 AM

Themaindifferencesbetweendisplay:インライン、ブロック、およびinline-blockinhtml/cssarelayoutbehavior、spaceusage、andstylingcontrol.1.inlineelementsflowwithtext、notstartonnewlines、nagrorewidth/height、height、andonlyhorizo??ntalpadddddddddddddddding

CSSペイントAPIとは何ですか? CSSペイントAPIとは何ですか? Jul 04, 2025 am 02:16 AM

thecsspaintingapienablesdynamicimagegeneration incssusingjavascript.1.developerscreateapaintclasswithapaint()method.2.they registeritviaregisterpaint()

CSSを使用して応答性のある畫像を作成する方法は? CSSを使用して応答性のある畫像を作成する方法は? Jul 15, 2025 am 01:10 AM

CSSを使用してレスポンシブ畫像を作成するには、主に次の方法で達成できます。1。最大幅を使用してください:100%と高さ:自動化して、割合を維持しながら畫像がコンテナ幅に適応できるようにします。 2。HTMLのSRCSETおよびサイズの屬性を使用して、異なる畫面に適合した畫像ソースをインテリジェントにロードします。 3.オブジェクトフィットとオブジェクトポジションを使用して、畫像のトリミングとフォーカスディスプレイを制御します。一緒に、これらの方法により、畫像がさまざまなデバイスで明確かつ美しく表示されるようになります。

一般的なCSSブラウザの矛盾とは何ですか? 一般的なCSSブラウザの矛盾とは何ですか? Jul 26, 2025 am 07:04 AM

さまざまなブラウザのCSS解析に違いがあるため、主にデフォルトのスタイルの違い、ボックスモデルの計算方法、フレックスボックスおよびグリッドレイアウトサポートレベル、および特定のCSS屬性の一貫性のない動作を含む一貫性のないディスプレイ効果が得られます。 1.デフォルトのスタイル処理は一貫性がありません。解決策は、cssresetまたはremormize.cssを使用して初期スタイルを統(tǒng)合することです。 2。IEの古いバージョンのボックスモデル計算方法は異なります。 Box-Sizing:Border-Boxを統(tǒng)一された方法で使用することをお勧めします。 3. FlexBoxとグリッドは、エッジの場合や古いバージョンでは異なる機能を示します。より多くのテストを行い、Autoprefixerを使用します。 4.一部のCSS屬性の動作は一貫性がありません。 Caniuseは相談して格下げする必要があります。

See all articles