背景は、初期の単色の塗りつぶしから現在に至るまで、背景を設定するために使用される要素であり、グラデーションだけでなく、描画モードも使用できます。今日は、@不bubu によるこの優れた記事で、これらのサブ属性の使用法を 1 つずつ説明します。週末に学習してください。
背景属性は、CSS で要素の背景を設定するために使用される属性です。最も単純な背景属性名は、背景の複数の設定の省略形を組み合わせたものです。初期の CSS では、単一の背景画像しか使用できませんでした。複数の背景画像を設定できるようになりました。写真を使用する代わりに、初期の背景は単色で塗りつぶすことしかできませんでしたが、現在ではさまざまなグラデーション効果を使用できるようになりました。現在使用されているモデルは、CSS Backgrounds and Borders Module Level 3 で定義された仕様に基づいており、主に 8 つのサブプロパティに分かれています。
Background-color は、最も古く、最も古く、最も一般的に使用される属性の 1 つであり、その値が唯一の色の値です。
背景画像は、名前が示すように、背景の「画像」を設定します。ここでの画像は、私たちが通常理解している「画像」ではなく、合成されています。 CSS 画像値と置換コンテンツ モジュールは、CSS2 で指定されている background-image 属性と list-style-image 属性の url パラメータを置換する一連のコンテンツ、または擬似要素コンテンツの値を指定します。現在、ブラウザはこれらを完全に実装していません。利用可能なものには、画像を参照する url() と、グラデーション「画像」、およびすべての画像 (存在する場合) をカンマで区切るものが含まれます。
CSS グラデーションは、linear-gradient() の線形グラデーションと、radial-gradient() の放射状グラデーションの 2 種類に分かれます。初期の異なるブラウザでの 2 つのグラデーションの実装構文はまったく異なっていたため、それを使用する人は少なく、依然として画像を使用する傾向がありましたが、現在ではさまざまなブラウザの表示と実装が基本的に一貫しており、モバイルではより適切な実装が行われています。モバイル開発で広く使用できます (ただし、IE9 と互換性がある場合は、引き続き ╮(╯_╰)╭) を使用して実行することもできます。
線形グラデーション: Linear-gradient(
radial-gradient([ [
もともとこの構文を省略したかったのですが、このように書く方が良いことがわかりました) これが標準の書き方であり、私はそれについて真剣に考えました)... 後ろから前へ
サイズには 4 つのキーワードも使用できます。closest-side (最も近い側)、farthest-side (最も遠い側)、closest-corner (最も近い角)、farthest-corner (最も遠い角度)、これら 4 つのキーワード名前が示すとおり、要素を基準にして円の中心を参照します。
たとえば、次の 3 行のコードは同等です:
radial-gradient(yellow, green);radial-gradient(ellipse at center, yellow 0%, green 100%);radial-gradient(farthest-corner at 50% 50%, yellow, green);
グラデーションの繰り返し:repeat-linear-gradient() と繰り返し -radial-gradient()
使用法は上記と同じですが、今回はグラデーションが繰り返されます。 ここには素晴らしいデモがいくつかありますが、もちろん、これは主に、background-blend-mode プロパティを披露するために構築されています。
background-repeadは、背景の繰り返し方法を設定するために使用されます。 オプションの値は次のとおりです。
background-attachment は、背景の相対固定方法を設定するために使用されます。 オプションの値は次のとおりです:
背景位置は、名前が示すように、位置決めに使用されます...しかし、この位置決め...構文は非常に複雑です (または非常にカジュアルです) 。方向を示す各種キーワードは、数値単位やパーセンテージで使用することもできます。記述方法は次のとおりです。
Background-clipは、背景で覆う範囲を設定する属性です。オプションの値は次のとおりです:
background-origin背景画像を指定します。 位置決めの原点です。プロパティ値は、background-clip と同じですが、clip は背景画像をトリミングし、origin は位置決めに使用されます。
より明確に示したこのデモをご覧ください。
背景サイズは、背景サイズを設定するために使用されます。 オプションの値は次のとおりです。
背景は上記 8 つの属性の合計です...すべての属性をまとめて記述することができます。順番はスペースで区切るだけで特に制限はありませんが、注意点がいくつかあります。
CSS3 の時代から、CSS の背景は複数の背景画像をサポートし始めており、それらをまとめて設定できます。
各背景画像をカンマで区切っている限り、ブラウザは順番に読み込み、最後に書かれたものを上に重ねていきます。
個別に設定される背景属性の場合、カンマで区切って個別に設定することもできます。ただし、画像の 1 つの特定の属性のみを設定したい場合は、他の画像を記述する必要があります...
そして、背景の色は一意です (手)。背景を使用する場合は、背景を省略します。 color は最後のカンマの後に設定する必要があります。
また、昨年の最新の Compositing and Blending ドラフトでは、ブレンド モードのドラフト仕様が提案されました。この記事を書いた時点では、背景に関連する属性は 2 つだけでした。主なもの: Chrome と FF ブラウザがこの属性をサポートしています。
Photoshop を使ったことがある人なら、Photoshop のブレンド モードについて聞いたことがあるはずです。この 2 つは似た意味を持ちます。背景ブレンドモードのオプションのパラメータには、標準、乗算、スクリーン、オーバーレイ、暗くする、明るくする、カラードッジ (カラードッジ)、カラーバーン (色を濃くする)、ハードライト (強いライト)、ソフトライト (柔らかい光)、差分(差)、除外(除外)、色相(色相)、彩度(彩度)、色(色)、明度(明るさ)。
これらのパラメータの中国語は、Photoshop のブレンド モードに基づいて私が直接翻訳したものです (繁体字中国語ユーザーはここを参照してください)。各ブレンド モードのアルゴリズムとデモンストレーション効果もドラフト仕様に記載されています。時間の関係上、結果を一つ一つ検証することはしませんが、相違がある場合には、実際の結果が優先されます。 MDN には実践的なデモがあり、先ほど紹介した Web サイトにも実践的なデモが多数掲載されています。
もちろん、これらのブレンド モードは他の画像 (SVG など) にも適用できますが、これは完全にデザイナーとフロントエンド エンジニアの喧嘩を減らし、より誠実にするためだと思います (手を見せてください)。
[Ushu.com オリジナル記事投稿メール: 2650232288@qq.com]