CSSブレンドモードとSVGを使用して、製品画像の色を動的に変更します。

CSSブレンドモードとSVGを使用して、製品画像の色を動的に変更します。

数日前、Codepen で @Kyle Wetton が書いた、CSS ブレンディング モードと SVG を使用してソファの色を変更する例を見ました。非常に興味深い事例です。これは、実際のビジネス シナリオでの応用を思い出させます。たとえば、美容アプリケーションにも同様のシナリオがあります。この効果を実現する方法についてさらに詳しく知りたいですか?もしそうなら、読み続けてください。

CSS ブレンドモードと SVG を使用してソファの色を変更する

次のデモは、Codepen で @Kyle Wetton が作成したエフェクトからのものです。

色を変更してみると、さまざまなソファの色が表示されます。

面白いと思いませんか?

実際、実際のシーンでも、美容アプリケーションなど、同様の効果がいくつかあります。

実施原理や効果を知りたい方は、ぜひ読み進めてください。

必要な基礎知識

上記の例の効果をうまく実装したい場合は、少しの基礎知識が必要です。たとえば、CSS 混合モード、SVG などです。

CSS ブレンド モードのさまざまなプロパティ値を使用すると、画像の効果を簡単に変更できます。

CSS 混合モードでは、他の多くの効果も実現できますが、ここでは詳しく説明しません。

さらに、写真を切り抜くスキルも必要です。しかし、フロントエンドではこれは問題にならないと思います。

ソファのスキンを変更する方法

次に、これを実践して、まずは@Kyle Wetton のケースを分析してみましょう。この例は非常に単純で、HTML には 3 つの部分があります。

  • 非常に密集した SVG コードが山ほどあります。SVG を知らない学生にとっては、間違いなく恐怖感を覚えるでしょう (慌てないでくださいね)
  • 写真があります
  • ユーザーが色を選択できるコントロールがいくつかあります

この SVG コードを簡単に分析してみましょう。

<svg id="js-couch" class="couch__overlay" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" preserveAspectRatio="none" width="1000" height="394">
    <定義>
        <path d="M996.35 77.55q-1.85-1.95-8.65-3.75l-62.4-17.1q-9.3-2.75-12.15-2.5-1.8.15-2

要約する

以上が、CSS ブレンディング モードと SVG を使用して製品画像の色を動的に変更する方法についてご紹介しました。お役に立てれば幸いです。ご質問がある場合は、メッセージを残していただければ、すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

<<:  ウェブページのテーブルの境界線を設定する方法

>>:  IE6 での背景画像キャッシュ

推薦する

CentOS サーバーの時間を北京時間に変更する方法

1. VPSとCentOSシステムを購入しましたが、サーバーの時間が北京時間と一致せず、時差があるこ...

win10 64 ビット システムに複数の JDK バージョンをインストールする際の切り替え問題と解決策の概要

コンピューターにmyeclipse2017とidea2017がインストールされているため、ideaが...

ウェブページ経由で jar パッケージを Nexus にアップロードする方法

Maven を使用してプロジェクトを管理する場合、jar パッケージをプライベート ウェアハウスにア...

ActiveMQ メッセージ サービスを構築するための Docker 学習方法の手順

序文ActiveMQ は、Apache が開発した最も人気があり強力なオープン ソース メッセージ ...

CSS3 は、跳ねるボール効果を実現する Web アニメーションを作成します。

基本的な準備この実装には、クラス名が ball である単純な div が必要です。 HTMLコード:...

MySQLデータベースはsysbenchに基づくOLTPベンチマークテストを実装します

Sysbench は、MySQL データベース ストレージ エンジン InnoDB のディスク I/...

MySQLカバーインデックスの利点

一般的な提案は、WHERE 条件のインデックスを作成することですが、これは実際には一方的です。インデ...

モバイルデバイスにおける適応レイアウトの問題に関する簡単な説明 (レスポンシブ、rem/em、Js ダイナミクス)

3G の普及により、携帯電話を使ってインターネットにアクセスする人が増えています。モバイル デバイ...

CentOS 上の Docker に Jupyter をインストールしてポートを開く方法

目次jupyterをインストールするDocker ポートマッピングjupyterをインストールするp...

MySQLのExcelへのエクスポート方法の分析

この記事では、MySQL を使用してデータを Excel にエクスポートする方法について説明します。...

MySQL 8.0.15 のインストールと設定方法のグラフィック チュートリアル (Windows 10 X64)

最近私が学んでいるのは MySQL の知識なので、MySQL をインストールすることが非常に重要です...

Dockerコンテナとホストマシン間の8時間の差の問題を解決する

デプロイに docker-compose を使用すると、出力ログと関連イベントが検証されて出力される...

要素UIポップアップコンポーネントをカプセル化する手順

el-dialogをコンポーネントとしてカプセル化するelement-ui を使用する場合、ポップア...

さまざまな解像度やブラウザでウェブページを適切に表示する方法

キーコードは次のとおりです。コードをコピーコードは次のとおりです。 html{高さ:100%; }コ...

特殊効果メッセージボックスを実現するネイティブJS

この記事では、ネイティブ JS で実装された特殊効果メッセージ ボックスを紹介します。効果は次のとお...