SVGで差し込み影を作成する方法
P粉311089279
P粉311089279 2023-10-21 15:57:11
0
2
625

CSS3 にインライン ボックス シャドウがあるのと同じように、インライン シャドウのあるボックスを作成する必要があります。私がこれまでに見つけたのは、feGaussianBlur を使用したフィルターですが、問題は、ボックスの外側にも影を追加してしまうことであり、これは望ましくありません。これは私がこれまでに得たコードです:

リーリー

デモを作成し、このコードを目的の CSS 制作結果と比較しました。このフィルターは長方形だけでなく、台形やより複雑な多角形にも作用します。

RadialGradient を使用してみましたが、グラデーションが円形になるため、これも良くありません。

P粉311089279
P粉311089279

全員に返信(2)
P粉287345251

私が見つけた 実験に主に基づいて 、これが私が思いついたものです:

リーリー

パディングを表示したい場合は、最後の のコメントを解除します。残念ながら、fill="transparent" はフィルターに使用可能なアルファを与えず、シャドウも生成しません。

いいねを押す +0
P粉216203545

ソリッドパディングがある場合は、

を追加できます。 リーリー

フィルターの終わりに向かって、ブラーを SourceGraphic の形状にクリップします。シェイプは透明なので、さらに作業を行う必要があります。正しい構成を選択できるように元の形状に半透明の塗りつぶしを使用し、最終操作で塗りつぶしをゼロにするために feFuncA を使用することをお勧めします。これは非常に複雑であることがわかります。しかし、これはどんな実線の形状にも機能する解決策です

リーリー

これは私の fiddle ブランチです: http://jsfiddle.net/kkPM4/

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!