svg:CSSでのスタイリングと操作に深く飛び込みます
Scalable Vector Graphics(SVG)は、Webグラフィックスに最適な軽量のXMLベースのベクトル画像形式です。 インタラクティブ性とアニメーションのサポートは、優れたブラウザの互換性(IE9以降)と相まって、最新のWeb開発のための強力なツールになります。この記事では、SVGをスタイリングおよび操作するためにCSSを活用し、Webデザインの汎用性を高めます。
SVGの重要な利点
スケーラビリティ:コマーシャル:
Adobe Illustrator、Affinity Designer、Sketch
オープンソース:
inkscapeオンライン(無料/コマーシャル):
Gravit Designer、Vectr、SVG-Edit、Boxy SVG、Vecteezy
PostCSSアセットプラグインなどのツールは、このプロセスを合理化します。
.myelement { background-image: url("mybackground.svg"); }
レスポンシブSVG画像
レスポンシブデザインの場合、サイジングの問題を防ぐために、デフォルトの幅と高さがタグ内で定義されていることを確認してください:
次に、CSS:<svg>
を使用します
.mysvgbackground { background: url('data:image/svg+xml;utf8,<svg viewBox="0 0 800 600" xmlns="https://www.w3.org/2000/svg"><circle cx="400" cy="300" fill="#ff0" r="50" stroke="#f00" stroke-width="5"></circle></svg>') center center no-repeat; }
htmlインラインドSVG画像
<svg xmlns="https://www.w3.org/2000/svg" width="400" height="300"></svg>
svgをHTMLに直接埋め込むと、DOMの一部になり、CSSとJavaScriptの操作が可能になります:
CSSは、特定のSVG要素をターゲットにできますこれにより、
、遷移、アニメーションを使用した動的スタイリングが可能になります。img { display: block; max-width: 100%; height: auto; }
svgスプライト:効率的なアイコン管理
<svg id="invader" xmlns="https://www.w3.org/2000/svg" viewBox="35.4 35.4 195.8 141.8"> <path d="..."></path> </svg>
:hover
要素を使用して、複数のアイコンを単一のSVGファイルに結合します:
要素を使用して、HTML:
のアイコンを参照してください
<symbol>
これによりパフォーマンスが向上しますが、クロスブラウザーの互換性と効率的なキャッシングには慎重に処理する必要があります。 Ajaxの荷重や注入などの手法は、これらの課題に対処できます。
#invader { width: 200px; height: auto; } #invader path { stroke-width: 0; fill: #080; }
<use>
<svg> <defs> <symbol id="icon-folder" viewBox="0 0 32 32">...</symbol> </defs> </svg>
、および
プロパティをレバレッジして、マスキング、クリッピング、視覚フィルターなどの効果をSVG要素に適用します。 CSS内のSVG要素を参照すると、複雑な視覚操作が可能になります。埋め込まれたインタラクティブ性を備えたスタンドアロンSVG
Standalone SVGファイルには、CSS、JavaScript、さらにはビットマップを含めることができ、自己完結型のインタラクティブなグラフィックスを作成できます。 これにより、外部リソースに依存せずにインタラクティブコンテンツを配布できます。
mask
clip-path
結論filter
SVGは、Webグラフィックスに強力で効率的なアプローチを提供します。 その汎用性は、単純な静的画像から複雑でインタラクティブなアニメーションにまで及び、Webデザインを強化するための多くの可能性を提供します。
以上がSVGを備えたCSS:Real Worldの使用の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。