`:has()` pseudo-class(parent selector)を説明する
:CSSの()擬似クラスは、子要素に基づいて親要素をターゲットにすることができます。 Syntax Parent:(子セレクター)を使用して、スタイルを条件付きで適用することで機能します。たとえば、div:has(img)は、画像を含むdivにスタイルを適用します。複数のセレクターは、div:has(img、p.special)などのコンマで使用できます。一般的なユースケースには、スタイリングコンテナ、フォーム検証フィードバック、およびサブメナスのあるメニュー項目を示すことが含まれます。 Browser Supportは、Chrome、Safari、Edgeなどの最新のブラウザで利用できますが、Firefoxには2024年後半の時点ではサポートがありません。考慮事項には、パフォーマンスへの影響、非営業行動、およびサポートされていない環境でのフォールバックの必要性が含まれます。
:has()
pseudo-classは、特定の子要素またはその中の状態の存在に基づいて親要素をターゲットにすることができる強力なCSSセレクターです。以前:has()
が導入されましたが、CSSには子供に基づいて親を選択するネイティブの方法はありませんでした。次に、 :has()
、これはCSSのみを使用して可能になります。

使用方法:has()
:has()
、セレクターを引数として取得し、その内部に少なくとも1つの一致する要素を含む要素を一致させることで機能します。構文は次のように見えます:
親:has(子セレクター){ / * styles */ }
たとえば、 <img src="/static/imghw/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/175251076578590.jpeg" class="lazy" alt="`:has()` pseudo-class(parent selector)を説明する" >
が含まれている場合にのみ<div>
スタイルを作成したい場合は、次のことを書くことができます。

div:has(img){ ボーダー:2pxソリッドグリーン。 }
これにより、境界線は、内部のどこかに画像タグを直接含むdiv
要素にのみ適用します。
また、複数のセレクターを内部にチェーンすることもできます:has()

div:has(img、p.special){ バックグラウンドカラー:#f0f0f0; }
このルールは、 img
とp
両方を備えたDIVとspecial
の両方のdiv
と一致します。
一般的なユースケース:has()
- 条件付きのスタイリングコンテナ:たとえば、ビデオが含まれている場合にのみ、さまざまなパディングまたはマージンをカードレイアウトに適用します。
- フォーム検証フィードバック:必要な入力が無効である場合のフォームグループの強調表示。
- サブメナス付きのメニュー項目:リストがネストされているメニュー項目にのみ矢印またはインジケーターを適用します。
これが現実世界の例です:
li:has(ul){ 位置:相対; パディング右:20px; } li:has(ul)::後{ コンテンツ: '▾'; 位置:絶対; 右:5px; }
これにより、サブメニュー( <ul></ul>
)を含む任意のリスト項目にドロップダウンインジケーターが追加され、ナビゲーションが追加のマークアップを追加せずに直感的になります。
ブラウザのサポートと考慮事項
現在、 :has()
、Chrome(V105)、Safari(V15.4)、Edge(V106)などのほとんどの最新のブラウザーでサポートされています。 Firefoxのサポートは2024年後半の時点でまだ保留中です。そのため、幅広い視聴者をターゲットにしている場合は、互換性を確認することが重要です。
また、覚えておいてください:
-
:has()
、過度に使用される場合、または複雑なセレクターで使用するとパフォーマンスに影響を与える可能性があります。 - JavaScriptと同じように動的ではありません。レンダリング時にのみ評価します。
- サポートされていないブラウザにフォールバックが用意されていない限り、重要なレイアウトで使用しないでください。
生産で使用している場合は、機能の検出またはプログレッシブエンハンスメント戦略を検討して、サイトをどこにでも使用できるようにします。
基本的に、 :has()
CSSに構造に基づいた条件付きスタイリングのための長いミッシングツールを提供します。まだ普遍的にサポートされていませんが、将来の使用を試して計画する価値は間違いありません。
以上が`:has()` pseudo-class(parent selector)を説明するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undress AI Tool
脱衣画像を無料で

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

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

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック

PHPでソーシャル共有機能を構築するコア方法は、各プラットフォームの要件を満たす共有リンクを動的に生成することです。 1.最初に現在のページまたは指定されたURLおよび記事情報を取得します。 2。urlencodeを使用してパラメーターをエンコードします。 3.各プラットフォームのプロトコルに従って、共有リンクをスプライスおよび生成します。 4.ユーザーがクリックして共有できるように、フロントエンドにリンクを表示します。 5.ページ上のOGタグを動的に生成して、コンテンツディスプレイの共有を最適化します。 6. XSS攻撃を防ぐために、必ずユーザーの入力を逃がしてください。この方法は、複雑な認証を必要とせず、メンテナンスコストが低く、ほとんどのコンテンツ共有ニーズに適しています。

1.コメントシステムの商業的価値を最大化するには、ネイティブ広告の正確な配信、ユーザー有料の付加価値サービス(写真のアップロード、トップアップコメントなど)、コメントの品質に基づくインセンティブメカニズム、コンプライアンス匿名データ洞察の収益化に影響を与える必要があります。 2。監査戦略では、コンテンツの品質評価によって補足されたコンテンツの階層的露出を実現するために、コメントの品質評価によって補足された、監査前の動的キーワードフィルタリングとユーザー報告メカニズムの組み合わせを採用する必要があります。 3.アンチブラシには、多層防御の構築が必要です。RecaptChav3センサーのレス検証、ハニーポットハニーポットフィールド認識ロボット、IPおよびタイムスタンプの頻度制限により、水の散水が防止され、コンテンツパターン認識が疑わしいコメントを示し、攻撃を継続的に繰り返します。

MAC環境の構築におけるHomebrewの中心的な役割は、ソフトウェアのインストールと管理を簡素化することです。 1. Homebrewは、依存関係を自動的に処理し、複雑な編集プロセスとインストールプロセスを簡単なコマンドにカプセル化します。 2。ソフトウェアのインストールの場所と構成の標準化を確保するために、統一されたソフトウェアパッケージエコシステムを提供します。 3.サービス管理機能を統合し、BrewServicesを介してサービスを簡単に開始および停止できます。 4.便利なソフトウェアのアップグレードとメンテナンス、およびシステムのセキュリティと機能を改善します。

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

CSSのテキスト色を変更するには、色属性を使用する必要があります。 1。色属性を使用して、テキストの前景色を設定し、色名(赤など)、16進コード(#FF0000など)、RGB値(RGB(255,0,0)など)、HSL値(HSL(0,100%、50%)など)、RGBAまたはHSLAを使用してRGBAまたはHSLA 2. H1からH6タイトル、パラグラフP、リンクAなどのテキストを含む任意の要素に色を適用できます(a:link、a:a:a:hover、a:active、div、spanなどの異なる状態の色設定に注意してください)。 3。最も

installdartsassvianpmafterinstallingnode.jsusingnpminstall-gsass.2.compilescsstocsusingthecommandsassinput.scssoutput.css.3。 usesass - watchinput.scssoutput.csstoauto-compileonsave.4.watchentirefolderswithsass - watchscss:css.5.usepartialswith_prefixfo

Accent-Colorは、CSSで使用される属性であり、チェックボックス、ラジオボタン、スライダーなどのフォーム要素のハイライト色をカスタマイズします。 1.チェックボックスの青いチェックマークを赤に変更するなど、フォームコントロールの選択した状態のデフォルト色を直接変更します。 2。サポートされている要素には、type = "チェックボックス"、type = "Radio"、type = "range"の入力ボックスが含まれます。 3.アクセントカラーを使用すると、複雑なカスタムスタイルと余分なDOM構造を回避し、ネイティブアクセシビリティを維持できます。 4.一般的に最新のブラウザによってサポートされており、古いブラウザを格下げする必要があります。 5. Accent-Colを設定します

Web開発では、CSSユニットの選択は、設計要件とレスポンシブパフォーマンスに依存します。 1。ピクセル(PX)は、境界線やアイコンなどのサイズを修正するために使用されますが、応答性のある設計を助長しません。 2。パーセント(%)は、レイアウトのストリーミングに適した親コンテナに従って調整されますが、コンテキスト依存性に注意します。 3.EMは現在のフォントサイズに基づいており、REMは弾性フォントと統一されたテーマコントロールに適したルート要素フォントに基づいています。 4。ビューポートユニット(VW/VH/VMIN/VMAX)は、画面サイズに従って調整され、フルスクリーン要素と動的UIに適しています。 5。自動、継承、初期、およびその他の値を使用して、スタイルを自動的に計算、継承、またはリセットするために使用されます。これは、柔軟にレイアウトとスタイル管理に役立ちます。これらのユニットを合理的に使用すると、ページの柔軟性と応答性が向上する可能性があります。
