Webpack が実際に SVG をロードする方法の詳細な例
この記事では、Webpack を使用して SVG を読み込む実践的な方法を主に紹介します。編集者が非常に優れていると考えたので、参考として共有します。編集者をフォローして見てみましょう。皆さんのお役に立てれば幸いです。
SVG はベクター グラフィックスの標準形式として主要なブラウザーでサポートされており、Web 上のベクター グラフィックスの代名詞ともなっています。 Web ページでビットマップの代わりに SVG を使用すると、次のような利点があります。
SVG はビットマップよりも鮮明で、任意のスケーリングでもグラフィックスの鮮明さを損なうことはありません。 SVG は、高解像度の画面上の画像を簡単に解決できます。
グラフィック線が比較的単純な場合、SVG ファイルのサイズはビットマップよりも小さくなります。フラット UI が普及している現在、SVG のサイズはほとんどの場合小さくなります。
同じグラフィックスの SVG は、対応する高解像度グラフィックスよりもレンダリング パフォーマンスが優れています。
SVG は、HTML と一致する XML 構文記述を使用しており、非常に柔軟です。
描画ツールは、.svg ファイルを 1 つずつエクスポートできます。SVG のインポート方法は、次のように CSS で直接使用することもできます。 HTML 内:
body { background-image: url(./svgs/activity.svg); }
つまり、SVG ファイルを直接画像として使用でき、方法は画像を使用する場合とまったく同じです。 したがって、「3-19 file-loader を使用した画像の読み込み」と「url-loader を使用した画像の読み込み」で紹介した 2 つの方法は、SVG に対して同様に効果的です。必要なのは、Loader テスト設定のファイル接尾辞を .svg に変更することだけです。
<img src="./svgs/activity.svg"/>
SVGはテキスト形式のファイルなので、上記2つの方法以外にも方法がありますので、以下に一つずつ説明していきます。
raw-loader を使用します
module.exports = { module: { rules: [ { test: /\.svg/, use: ['file-loader'] } ] }, };
raw-loader 処理後の出力コードは次のとおりです:
import svgContent from './svgs/alert.svg';
つまり、svgContent のコンテンツは文字列形式の SVG と同じです。 、SVG 自体は HTML 要素であるため、SVG コンテンツを取得した後、次のコードを通じて SVG を Web ページに直接挿入できます:
module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\"... </svg>" // 末尾省略 SVG 内容
raw-loader を使用する場合の関連する Webpack 構成は次のとおりです:
window.document.getElementById('app').innerHTML = svgContent;
raw-loader は SVG のテキストコンテンツを直接返すため、CSS を介して SVG のテキストコンテンツを表示することはできません。そのため、このメソッドを使用した後、SVG を CSS にインポートすることはできません。 つまり、background-image: url() は違法であるため、background-image: url(./svgs/activity.svg) のようなコードは CSS に含めることができません。 。
この例はプロジェクトの完全なコードを提供します
svg-inline-loaderの使用方法
svg-inline-loaderは上記のraw-loaderと非常に似ていますが、違いはsvg-inline-loaderが分析することです。 SVG のコンテンツを削除して、SVG のファイル サイズを減らすためにコードの不要な部分を含めます。Adobe Illustrator や Sketch などの描画ツールを使用して SVG を作成すると、これらのツールはエクスポート時に Web ページを実行するために不要なコードを生成します。 たとえば、以下は Sketch でエクスポートされた SVG のコードです:
module.exports = { module: { rules: [ { test: /\.svg$/, use: ['raw-loader'] } ] } };
svg-inline-loader で処理された後、次のように合理化されます:
<svg class="icon" verison="1.1" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke="#000"> <circle cx="12" cy="12" r="10"/> </svg>
つまり、svg- inline-loader は SVG 圧縮機能のサポートを追加します。
svg-inline-loader を使用する場合の関連する Webpack 構成は次のとおりです:
<svg viewBox="0 0 24 24" stroke="#000"><circle cx="12" cy="12" r="10"/></svg>
この例では、プロジェクトの完全なコードが提供されます
関連する推奨事項:
webpack+express のマルチページサイト開発例の詳細な説明
以上がWebpack が実際に SVG をロードする方法の詳細な例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

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

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

ホットトピック








![Illustrator でのプラグインの読み込みエラー [修正]](https://img.php.cn/upload/article/000/465/014/170831522770626.jpg?x-oss-process=image/resize,m_fill,h_207,w_330)
Adobe Illustrator を起動すると、プラグインの読み込みエラーに関するメッセージが表示されますか?一部の Illustrator ユーザーは、アプリケーションを開いたときにこのエラーに遭遇しました。メッセージの後には、問題のあるプラグインのリストが続きます。このエラー メッセージは、インストールされているプラグインに問題があることを示していますが、Visual C++ DLL ファイルの破損や環境設定ファイルの破損など、他の理由によって発生する可能性もあります。このエラーが発生した場合は、この記事で問題を解決する方法を説明しますので、以下を読み続けてください。 Illustrator でのプラグインの読み込みエラー Adobe Illustrator を起動しようとしたときに「プラグインの読み込みエラー」エラー メッセージが表示された場合は、次の操作を行うことができます。 管理者として

Windows PC の Stremio で字幕が機能しませんか?一部の Stremio ユーザーは、ビデオに字幕が表示されないと報告しました。多くのユーザーが、「字幕の読み込みエラー」というエラー メッセージが表示されたと報告しています。このエラーとともに表示される完全なエラー メッセージは次のとおりです: 字幕の読み込み中にエラーが発生しました 字幕の読み込みに失敗しました: これは、使用しているプラグインまたはネットワークに問題がある可能性があります。エラー メッセージにあるように、インターネット接続がエラーの原因である可能性があります。したがって、ネットワーク接続を確認し、インターネットが適切に機能していることを確認してください。これとは別に、このエラーの背後には、競合する字幕アドオン、特定のビデオ コンテンツでサポートされていない字幕、古い Stremio アプリなど、他の理由が考えられます。のように

インターネットの発展に伴い、スクロール読み込みをサポートする必要がある Web ページが増えています。無限スクロール読み込みもその 1 つです。これにより、ページに新しいコンテンツを継続的に読み込むことができるため、ユーザーはよりスムーズに Web を閲覧できるようになります。この記事では、PHPを使って無限スクロールローディングを実装する方法を紹介します。 1. 無限スクロールローディングとは何ですか?無限スクロール読み込みは、スクロール バーに基づいて Web コンテンツを読み込む方法です。その原理は、ユーザーがページの一番下までスクロールすると、AJAX を通じてバックグラウンド データが非同期的に取得され、新しいコンテンツが継続的に読み込まれることです。このような積み込み方法

Outlook にハイパーリンクを挿入するときにフリーズの問題が発生した場合は、不安定なネットワーク接続、古い Outlook バージョン、ウイルス対策ソフトウェアによる干渉、またはアドインの競合が原因である可能性があります。これらの要因により、Outlook がハイパーリンク操作を適切に処理できない可能性があります。ハイパーリンクの挿入時に Outlook がフリーズする問題を修正する 次の修正プログラムを使用して、ハイパーリンクの挿入時に Outlook がフリーズする問題を修正します。 インストールされているアドインを確認する Outlook を更新する ウイルス対策ソフトウェアを一時的に無効にして、新しいユーザー プロファイルの作成を試行する Office アプリ プログラムを修正する Office をアンインストールして再インストールする 始めましょう。 1] インストールされているアドインを確認する Outlook にインストールされているアドインが問題の原因となっている可能性があります。

CSS を読み込めない問題の解決策には、ファイル パスの確認、ファイルの内容の確認、ブラウザのキャッシュのクリア、サーバー設定の確認、開発者ツールの使用、ネットワーク接続の確認などが含まれます。詳細な紹介: 1. ファイル パスを確認します。まず、CSS ファイルのパスが正しいことを確認してください。CSS ファイルが Web サイトの別の部分またはサブディレクトリにある場合は、正しいパスを指定する必要があります。 CSS ファイルはルート ディレクトリにあり、パスは直接である必要があります。 ; 2. ファイルの内容を確認します。パスが正しい場合は、CSS ファイル自体に問題がある可能性があります。CSS ファイルを開いて確認してください。

フォーム検証は Web アプリケーション開発において非常に重要なリンクであり、フォーム データを送信する前にデータの有効性をチェックして、アプリケーションのセキュリティ脆弱性やデータ エラーを回避できます。 Web アプリケーションのフォーム検証は、Golang を使用すると簡単に実装できます。この記事では、Golang を使用して Web アプリケーションのフォーム検証を実装する方法を紹介します。 1. フォーム検証の基本要素 フォーム検証の実装方法を紹介する前に、フォーム検証の基本要素が何であるかを知る必要があります。フォーム要素: フォーム要素は

JavaAPI 開発における Web サーバー処理に Jetty7 を使用する インターネットの発展に伴い、Web サーバーはアプリケーション開発の中核部分となり、多くの企業でも注目を集めています。増大するビジネス ニーズを満たすために、多くの開発者が Web サーバー開発に Jetty の使用を選択しており、その柔軟性と拡張性は広く認識されています。この記事では、JavaAPI 開発における Jetty7 の使用方法を紹介します。

Web 標準は、W3C およびその他の関連組織によって策定された一連の仕様とガイドラインです。HTML、CSS、JavaScript、DOM、Web アクセシビリティおよびパフォーマンスの最適化の標準化が含まれます。これらの標準に従うことで、ページの互換性を向上させることができます。 、メンテナンス性とパフォーマンス。 Web 標準の目標は、Web コンテンツをさまざまなプラットフォーム、ブラウザー、デバイス上で一貫して表示および操作できるようにして、より優れたユーザー エクスペリエンスと開発効率を提供することです。
