CSS ベンダー固有の疑似要素/クラスを結合できない理由
CSS ではベンダーを使用するのが一般的です。特定の疑似クラスと疑似要素を使用して、入力フィールド内のプレースホルダー テキストのスタイルを設定するためのブラウザー間の互換性を実現します。ただし、通常の CSS セレクターのように、これらのベンダー固有のセレクターを単一のルール セットに結合することは、CSS 検証の制限により不可能です。
CSS2.1 では、セレクターが、宣言ブロックの左中括弧。ユーザー エージェントが解析できないセレクターに遭遇した場合、ユーザー エージェントはセレクターと対応する宣言ブロックの両方を無視する必要があります。
ベンダー固有のプレフィックスのコンテキストでは、ブラウザーがプレフィックスを理解できないことが多いため、この制限が発生します。他のベンダー。ルールの疑似クラスまたは疑似要素セレクターにベンダー固有のプレフィックスが含まれている場合、ブラウザはそれを認識できないため、ルール全体が削除される可能性があります。
たとえば、カンマ区切りのルール セットに次のものが含まれている場合、 :-moz-placeholder 疑似クラスを含むセレクターの場合、Mozilla 固有のプレフィックスをサポートしていないブラウザー (Chrome や Safari など) は解析できないため、ルール全体を無視します。その特定のセレクター。これにより、組み合わせ方法は無効になります。
WebKit などの一部のブラウザーは、このルールから部分的に逸脱し、特定のコンテキストで認識されない疑似要素を許可する可能性があることに注意することが重要です。ただし、ベンダー固有のセレクターを組み合わせると、ブラウザー間で一貫性がなくなり、予測できないスタイル動作が発生する可能性があります。
したがって、この制限を回避し、一貫したプレースホルダー スタイルを確保するには、さまざまなブラウザーに対して個別のベンダー固有のセレクターを使用し続ける必要があります。ブラウザ。
以上がCSS ベンダー固有の疑似要素/クラスを結合できないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。