マスキングは、残りを隠しながら画面上に要素または画像の選択した部分を表示できる手法です。 Web開発者は、マスクプロパティとSVGマスク要素を介してブラウザでこの手法を使用できます。これらの機能により、画像編集ソフトウェアを使用せずに、ブラウザ内の画像やその他の要素にマスキング効果を表示できます。 この記事では、CSSとSVGマスキング機能を実行していることを示し、現在のブラウザのサポートの問題に関する情報を必ず含めるようにします。
執筆時点では、ほとんどのコードサンプルはWebKitブラウザーでのみ機能しますが、SVGベースのマスクはより広いブラウザのサポートを楽しんでいるようです。したがって、例を試してみたい場合は、ChromeのようなWebKitブラウザを使用することをお勧めします。キーテイクアウト
CSSおよびSVGでのマスキングにより、CSS「Mask」プロパティまたはSVG `
`要素のいずれかを使用して、要素の選択的な可視性が可能になります。
CSSマスキングは画像、勾配、またはSVG参照を利用できますが、SVGマスキングはベクターグラフィックスでよりコントロールを提供し、色とグラデーションマスクをサポートします。- ブラウザのサポートはさまざまです。CSSマスクは主にWebKitブラウザーでサポートされていますが、SVGマスクはFirefoxやInternet Explorerなどの最新のブラウザ全体でより広い互換性を持っています。
「マスクイメージ」、「マスクモード」、「マスクリピート」、「マスクポジション」、「マスクサイズ」などのマスクプロパティは、個別に設定するか、「マスク」プロパティに組み合わせることができます。便利なため。
-
アニメーションやテキストをマスクとして使用するなどの高度なマスキング効果を、CSSとSVGの両方で実現でき、Webデザインの柔軟性と創造性を高めます。
- クリッピングまたはマスキングを使用して、ウェブ上のマスキング効果を達成できます。
- クリッピングには、画像や要素の上に、円やポリゴンなどの閉じたベクトル形状を敷設することが含まれます。形状の背後にある画像の部分の部分は表示されますが、形状の境界の外側の部分は隠されます。シェイプの境界はクリップパスと呼ばれ、クリップパスプロパティを使用して作成します。 マスキングは、PNG画像、CSSグラデーション、またはSVG要素を使用して行われ、ページ上の画像または他の要素の一部を非表示にします。 CSS Maskプロパティを使用してこれを達成できます この記事では、CSS MaskプロパティとSVG
- CSSマスクプロパティ
- マスクは、個々のプロパティ全体のCSS速記のプロパティです。 それらのいくつかをより詳細に詳しく見てみましょう。
マスクイメージプロパティ
マスクイメージプロパティを使用して、要素のマスクレイヤー画像を設定できます。
値なしは、まったく値を設定することと同じではありません。それどころか、それはまだ透明な黒の画像層としてカウントされます。
Mask-ImageをURL値に設定できます。これは、PNG画像ファイルへのパス、SVGファイル、またはSVG
/* masking with two comma-separated values */ .masked-element { mask-image: url(mask.png), none; } /* using external svg graphic as mask */ .masked-element { mask-image: url(mask.svg); }これは、
mask1:のIDでsvg
.masked-element { mask-image: url(#mask1); }グラデーション画像は、マスクイメージプロパティにも適した値です。
マスクモードプロパティ
.masked-element { mask-image: linear-gradient(black 0%, transparent 100%); }
マスクモードを使用すると、マスクレイヤーイメージをアルファマスクまたは輝度マスクのいずれかに設定できます。
アルファマスクは、アルファチャネルを備えた画像です。さらに詳しくは、Alphaチャネルは、各ピクセルのデータに含まれる透明性情報です。 Alphaに設定されたMask-Modeプロパティを使用したマスキング操作は、画像のAlpha値をマスク値として使用します。アルファチャネルの便利な例は、黒くて透明な領域を持つPNG画像です。マスクされた要素は、1つのアルファ値を持つマスク画像の黒い部分を通して表示されます。アルファ値がゼロの透明部分の下の他のすべては隠されます。
このPNG画像をアルファマスクとして使用します:
そして、以下のJPG画像でマスキング操作を実行します:


.masked-element { mask-image: url(alpha-mask.png); mask-mode: alpha; }輝度マスクは、画像の輝度値をマスク値として使用します。上記のようなPNG画像 - しかし、白い画像は、輝度マスクの良い例です:
マスクの白いピクセルで覆われているマスクをマスクする要素の領域が透けて表示されます。マスクの透明なピクセルで覆われたマスクされた要素の部分は隠されます。

ここにコードがあります:

マスク繰り返しのプロパティ
マスクリピートは、バックグラウンドリピートのプロパティによく似ています。サイズと位置を設定した後、マスクレイヤー画像のタイルを制御します。
可能な値は次のとおりです- 繰り返し:マスク層の画像は、利用可能なスペース全体で繰り返されません。
- Repeat-X:マスクレイヤー画像がX座標に沿って繰り返されます。 繰り返しY:マスクレイヤー画像がY座標を繰り返します。
- スペース:マスクレイヤーの画像が繰り返され、利用可能な領域全体で間隔が広がっています。
- ラウンド:マスク層の画像は、利用可能な領域全体で繰り返されます。整数が利用可能なスペースに収まらない場合、画像は拡大されるまで拡大されます。
- たとえば、 これは私がマスクとして使用することを意図している画像です:
下のコードスニペットは、マスクリピートプロパティをスペースの値に設定します。

/* masking with two comma-separated values */ .masked-element { mask-image: url(mask.png), none; } /* using external svg graphic as mask */ .masked-element { mask-image: url(mask.svg); }マスクポジションプロパティ
マスクポジションプロパティを使用してマスクレイヤー画像を配置できます。このプロパティを、より馴染みのあるCSSバックグラウンドイメージプロパティに使用するのと同じ値に設定できます。その初期値は中心です。

ビューポートの左上隅にマスク画像レイヤーを配置する場合は、マスクポジションプロパティを
0 0:
の値に設定します。これは、上記のコードがブラウザでどのように見えるかです:
上記のマスクポジションプロパティの値を.masked-element { mask-image: url(#mask1); }100%100%
に変更すると、ビューポートの右下にマスクレイヤー画像が表示されます。

マスクサイズのプロパティを使用してマスクレイヤー画像のサイズをすばやく設定できます。これは、より馴染みのあるCSSバックグラウンドサイズのプロパティと同じ値を受け入れます。 たとえば、マスクサイズを50%に設定すると、マスクレイヤー画像が全幅の50%に表示されます。

これらのデモが以下のCodepenでアクション中のライブを見ることができます:
マスク層の合成

たとえば
:
/* masking with two comma-separated values */ .masked-element { mask-image: url(mask.png), none; } /* using external svg graphic as mask */ .masked-element { mask-image: url(mask.svg); }上のスニペットでは、
mask2.pngがmask1.pngの上に層状になっています。
マスクコンポジットプロパティでは、次のキーワードの値に応じて、さまざまなマスクレイヤーを組み合わせることができます。
- は、
- mask1.pngの上に塗装されています 減算:mask2.png の一部を表示します。ブラウザは標準のキーワードをまだサポートしていないため、少なくとも当面は、対応するコンポジットオペレーターキーワードソースを使用する必要があります。
- Intersect:mask2.pngの一部を表示しますmask1.png。ただし、CSSマスクをサポートする唯一の種類のブラウザであるWebKitブラウザは、非標準のコンポジットソースインキーワードが使用されている場合でも、画面に何も表示されないようです。 除外:
- mask1.pngおよびmask2.pngの一部を表示します。これは重複しません。繰り返しますが、標準のキーワードにはまだサポートがないため、CompositingオペレーターXORを使用する方がはるかに良いです。
- 以下のCodepenデモでライブデモをチェックできます: CodepenでSitePoint(@SitePoint)によるペンCSSマスクの合成を参照してください。 マスクの速記のプロパティ
マスクを使用して、CSSマスキング操作を1回で1回でマスキング操作を制御するすべてのプロパティを設定できます。
これが全マスクの速記です:
マスクオリジンとマスククリップは、より馴染みのあるバックグラウンドオリジンとバックグラウンドクリップのプロパティのように機能します。
マスクの速記のプロパティを並べ替えることはできますが、「/」シンボルで区切られたマスクポジションプロパティの後にマスクサイズのプロパティを設定する必要があります。また、マスクポジションを設定せずにマスクサイズを設定すると、無効な宣言が発生します。最後に、マスクプロパティで指定できない値は最初のデフォルト値に戻されるため、個々のプロパティをリセットする必要がある場合にマスクを使用すると本当に便利です。
svgマスク要素スケーラブルなベクトルグラフィックス、または略してSVGは、グラフィックをマークアップするためのXMLベースの言語です。
以上がブラウザでCSSとSVGをマスキングしますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

これは、フォームアクセシビリティについて行った小さなシリーズの3番目の投稿です。 2番目の投稿を逃した場合は、「ユーザーフォーカスの管理:Focus-Visible」をご覧ください。で

このチュートリアルでは、Smart Formsフレームワークを使用して、プロフェッショナルなJavaScriptフォームの作成を示しています(注:使用できなくなりました)。 フレームワーク自体は利用できませんが、原則とテクニックは他のフォームビルダーに関連しています。

CSS Box-Shadowおよびアウトラインプロパティは、WordPress 6.1でTheme.jsonサポートを獲得しました。実際のテーマでどのように機能するか、そしてこれらのスタイルをWordPressブロックと要素に適用するために必要なオプションのいくつかの例を見てみましょう。

最近GraphQLの作業を開始した場合、またはその長所と短所をレビューした場合、「GraphQLがキャッシュをサポートしていない」または

Svelte Transition APIは、コンポーネントがカスタムSVELTE遷移を含むドキュメントを入力または離れるときにアニメーション化する方法を提供します。

この記事では、Scrollbarsの世界に飛び込みます。私は知っています、それはあまりにも魅力的ではありませんが、私を信じてください、よく設計されたページは手をつないで行きます

あなたのウェブサイトのコンテンツプレゼンテーションの設計にどれくらいの時間に費やしますか?新しいブログ投稿を書いたり、新しいページを作成したりするとき、あなたは考えていますか

NPMコマンドは、サーバーの開始やコンパイルコードなどの1回限りのプロセスまたは継続的に実行されるプロセスとして、さまざまなタスクを実行します。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

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

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

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

ホットトピック









