国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目次
Webデザインに他の畫像形式ではなく、SVGシンボルを使用することの利點(diǎn)は何ですか?
はい、SVGシンボルはHTMLに直接埋め込むことができます。これは、
>および
CSSでSVGシンボルを使用できますか?
パフォーマンスのためにSVGシンボルを最適化する方法は?
JavaScriptでSVGシンボルを使用できますか?
レスポンシブSVGシンボルを作成する方法は?
ホームページ テクノロジー周辺機(jī)器 IT業(yè)界 「ReskinNable」SVGシンボル:それらの作り方(..そしてなぜ)

「ReskinNable」SVGシンボル:それらの作り方(..そしてなぜ)

Feb 18, 2025 am 10:17 AM

SVGアイコンは、スケーラビリティ、小さなファイルサイズ、CSSスタイリング機(jī)能のおかげで、最新のWebデザインでますます使用されており、レスポンシブWebサイトに最適です。

‘Reskinnable’ SVG Symbols: How to Make Them (..and Why)

SVGはCSSを使用してスタイリングできますが、これはSVGコードがHTMLページに埋め込まれている場(chǎng)合にのみ機(jī)能します。これは、SVGが埋め込まれない限り、SVGの単一の部分を変更できないことを意味します。

この記事では、SVG畫像の「スケルトン」が変更されたままですが、表面の外観を簡(jiǎn)単に変更できます。

この記事は、SVGの単一の部分を変更できないという問題の解決策を提案しています。これには、SVGの各形狀のシンボルを作成し、各シンボルが同じViewboxに作成され、必要に応じて各要素のスタイルが可能になります。

著者は、Adobe IllustratorとGulpを使用してSVGシンボルの構(gòu)築のワークフローを詳述し、この方法はすべての最新のブラウザと互換性があることに注意してください。

ファイルサイズ、スケーラビリティ、CSSスタイリング機(jī)能のおかげで、2016年には、最新のWebページでのSVGの広範(fàn)な使用が大幅に改善されました。

アイコンシステムで使用できます(獨(dú)自のSVGアイコンの構(gòu)築を參照)が、場(chǎng)合によってはアイコンフォントが望ましい場(chǎng)合があります(アイコンWARS:FONTSおよびSVGを參照)。

しかし、SVGはロゴまたはグラフィック要素(少なくとも過度に複雑な要素ではない)にも使用できます。また、その自然な柔軟性により、レスポンシブWebサイトに最適なソリューションになります(サラソウライダンの「CSSを使用したレスポンシブSVGの作成」を參照)。

SVGを使用すると、CSSを活用して要素全體のサイズと色を見つけて変更できますが、SVGコードがHTMLページに埋め込まれていない限り、この方法で個(gè)々の部分を変更することはできません。

質(zhì)問

より簡(jiǎn)単な例を見てみましょう。これは、複數(shù)の色で表示する必要がある畫像です。

伝統(tǒng)的に、3つの別々の畫像を作成します。しかし、単一のSVGファイルを使用してレンダリング時(shí)にスタイルを整える場(chǎng)合はどうなりますか?

また、ブラウザキャッシュを活用するために「SVGシンボル」に畫像を作成する方法はありますか?

‘Reskinnable’ SVG Symbols: How to Make Them (..and Why) 私はそれを「スキン可能なSVGシンボル」と呼びます - SVG畫像の「スケルトン」は同じままですが、表面の外観は簡(jiǎn)単に変更されます。

理想的な解決策は、CSSセレクターを介してシンボリック要素にアクセスし、いくつかのルールを追加することです(埋め込みSVGで使用する方法と同じ)。

以下の例では、各三角形にクラス(上、右、下、左)を追加し、畫像をシンボルとして配置し、次のようにCSSを介して変更しようとしました。

.top { fill: #356BA5; }
.right { fill: #357FD9; }
/* and so on... */

殘念ながら、現(xiàn)時(shí)點(diǎn)では、これは以下のCodepenデモに示すように、Firefoxでのみ機(jī)能します。 Firefoxでのみ2番目の畫像が青い色合いに表示されます(便宜上、ペンにシンボリックコードを埋め込みましたが、外部SVGファイルを使用すると同じ結(jié)果が得られます)。

codepen link 1

codepen link 2

大規(guī)模なプロジェクトでは、多くのそのような要素があり、メンテナンスの問題が重要な要素であるため、プロジェクトリソースをより適切に整理する方法を常に探しています。

私の目標(biāo)は純粋なCSSソリューションです。前の例は、CSSを介して回転、移動(dòng)、およびシェーディングできる?yún)g一の三角形SVGを使用して書き直すことができます。

しかし、私はこの解決策が好きではありません。問題を変えるだけで問題を解決しないように思えます。同じ形狀の現(xiàn)実世界のロゴコンポーネントはいくつありますか?

Sara Soueidanは、この問題を私よりもよく説明し、CSS変數(shù)を使用する巧妙なソリューションを提供します。殘念ながら、CSS変數(shù)は依然として実験的な手法であり、Microsoftブラウザーはそれらをサポートしていません。

solution

頻繁に起こるように、解決策は非常に単純なので、以前は期待していなかったので愚かに感じるでしょう。

數(shù)ヶ月前に新しいミディアムロゴを見たときに発見しました(メディアがロゴコードを変更したようです - あなたは私を信じなければなりません)。

‘Reskinnable’ SVG Symbols: How to Make Them (..and Why)

中程度のロゴは、それぞれ異なる固體で満たされた4つの「形」で構(gòu)成されていることがわかります。白黒バージョンは、緑色のバージョンと同じです(もちろん色を除く)。

単一のファイルの両方のバージョンを所有するソリューションは、各シンボルのシンボルを単純に構(gòu)築することです。 それを例に適用し、畫像內(nèi)の各形狀のシンボルを作成しましょう。それらはすべて、畫像全體と同じビューボックス(0 0 54 54)を共有するため、追加の指示なしに正しい位置に配置されます。シンボルコードで塗りつぶし、ストローク、スタイル、その他の屬性を使用しないように注意してください)。

これで、それらを単一のSVGコンテナに結(jié)合することができます:
<svg xmlns="https://www.w3.org/2000/svg">
    <symbol id="top" viewBox="0 0 54 54">
        <polygon points="54 0 0 0 27 27 54 0"></polygon>
    </symbol>
    <symbol id="right" viewBox="0 0 54 54">
        <polygon points="54 54 54 0 27 27 54 54"></polygon>
    </symbol>
    <symbol id="bottom" viewBox="0 0 54 54">
        <polygon points="0 54 54 54 27 27 0 54"></polygon>
    </symbol>
    <symbol id="left" viewBox="0 0 54 54">
        <polygon points="0 0 0 54 27 27 0 0"></polygon>
    </symbol>
</svg>

各使用要素は必要に応じてスタイリングでき、最も重要なことは、すべての最新のブラウザーと互換性があります。
<svg>
    <use class="top" xlink:href="#top"></use>
    <use class="right" xlink:href="#right"></use>
    <use class="bottom" xlink:href="#bottom"></use>
    <use class="left" xlink:href="#left"></use>
</svg>

codepen link 3

それだけです。

このようなSVGファイルをアレンジするだけです。もちろん、手動(dòng)で行うことはできますが、多くのグラフィック要素を管理する必要がある場(chǎng)合、またはより多くのプロジェクトでそれらをすばやく編集および再利用する必要がある場(chǎng)合は、よりスマートでより速いワークフローが必要です。 Adobe IllustratorといくつかのGulpを使用したソリューションを見つけました。

svgシンボル構(gòu)造ワークフロー

この手法の原則は、「獨(dú)自のSVGアイコンを作成する」と「IllustratorとIcomoonを使用してアイコンフォントを作成する」記事で紹介したのと同じですので、最初のステップについてはチェックしてください。

下の畫像のように、2つの要素があるとします。各要素は、特定のアートボードに配置されています:

‘Reskinnable’ SVG Symbols: How to Make Them (..and Why)

便宜上、いくつかの色を追加しましたが、充填色(もしあれば、ストロークカラー、ストロークサイズなど)がCSSを介して編集されることがわかっています。

各シンボルにはアートボードが必要なので、各畫像を各色の部分と同じくらい多くのアートボードにセグメント化する必要があります。

これは、Illustratorで非常に迅速に実行でき、各要素を切斷し、ターゲットアートボードを選択し、[所有権]コマンドのペーストを選択できます。

‘Reskinnable’ SVG Symbols: How to Make Them (..and Why)

各アートボードには特定の名前があることに注意してください。シンボリックIDに使用されます。

新しい「ファイル→エクスポート→畫面としてエクスポート」コマンドを使用して、SVGとしてアートボードをエクスポートできます。

これは、最新のIllustratorバージョンの非常に便利な新しいツールです。単一のコマンドを使用して、各アートボードまたはユーザー定義のリソースを複數(shù)の形式で保存できます。

エクスポートパネルから「アートボード」を選択し、「SVG」を出力形式に設(shè)定し、ターゲットフォルダーを選択します。

‘Reskinnable’ SVG Symbols: How to Make Them (..and Why)

各アートボードは単一のSVGファイルとしてエクスポートされます:

‘Reskinnable’ SVG Symbols: How to Make Them (..and Why)

ここで、すべてのファイルをSVGシンボルに結(jié)合し、不要なSVGプロパティを削除する必要があります。

gulp を使用しています

次のセクションは少し技術(shù)的ですが、必要に応じて、このような多用途のSVGを生成するための迅速で簡(jiǎn)潔な方法が得られます。

とにかく、Gulpが気に入らない場(chǎng)合は、次のすべての手順を手動(dòng)で完了することもできます。 Gulpを使用する前に何度かこれをしました。それは間違いなく學(xué)ぶのに最適な方法であり、継続的な編集とメンテナンスが必要ない小さなプロジェクトや場(chǎng)所で十分です。

.top { fill: #356BA5; }
.right { fill: #357FD9; }
/* and so on... */

私たちの目標(biāo)は、すべての不要なプロパティを削除しながら、すべての畫像を単一のファイルのSVG記號(hào)に配置することです。

<svg xmlns="https://www.w3.org/2000/svg">
    <symbol id="top" viewBox="0 0 54 54">
        <polygon points="54 0 0 0 27 27 54 0"></polygon>
    </symbol>
    <symbol id="right" viewBox="0 0 54 54">
        <polygon points="54 54 54 0 27 27 54 54"></polygon>
    </symbol>
    <symbol id="bottom" viewBox="0 0 54 54">
        <polygon points="0 54 54 54 27 27 0 54"></polygon>
    </symbol>
    <symbol id="left" viewBox="0 0 54 54">
        <polygon points="0 0 0 54 27 27 0 0"></polygon>
    </symbol>
</svg>
gulp以外では、私たちの仕事には他の拡張機(jī)能が必要です。

まず、gulp-svgstoreとgulp-svgminは、SVGファイルを結(jié)合して圧縮するために使用されます
  • gulp-renameは、ID名を調(diào)整し、ターゲットファイルの名前を指定するために使用されます。このモジュールは、以前のIllustrator SVGエクスポートコマンドを使用する場(chǎng)合に特に必要です。これについては後で説明します。
  • gulpfileをアレンジすることができます(コードはパブリックギストとして取得することもできます):

モジュールを読み込んだ後、ファイルに説明するよう指示します(svg_files/*。svg)。
<svg>
    <use class="top" xlink:href="#top"></use>
    <use class="right" xlink:href="#right"></use>
    <use class="bottom" xlink:href="#bottom"></use>
    <use class="left" xlink:href="#left"></use>
</svg>
のシンボルになります)。新しいIllustratorのエクスポートを畫面パネルとして使用する場(chǎng)合、ファイルは屬するアートボードとまったく同じ名前が付けられるため、最初の

rename

コマンドを回避できます。 id="umbrella" しかし、Illustratorの古いバージョンは、Illustratorファイル名をアートボード名に接続してファイル名を作成するため、イラストレーターのファイル名を削除するにはファイルの名前を変更する必要があります。

ファイルをクリーニングできます。 Gulp-Svgminは、「SVGベクターグラフィックスファイルを最適化するためのNodeJSに基づくツール」のSVGOのGulpバージョンです(Jake ArchibaldはSVGOのオンラインバージョンをリリースしました。これは、ファイルを手動(dòng)で配置する場(chǎng)合に非常に便利です)。

SVGOには多くの設(shè)定可能なオプションがあります(プロジェクトページでそれらすべてを閲覧できます)が、いくつかのみが必要です(もちろん、必要に応じてスクリプトをカスタマイズできます):
<svg id="Layer_1" data-name="Layer 1" xmlns="https://www.w3.org/2000/svg" width="54" height="54" viewBox="0 0 54 54">
<title>umbrella-handle</title>
<path d="..." fill="#603813"></path>
</svg>

cleanupids:ファイルからすべてのIDを削除します

removedoctype、RemoveComments、およびRemovestyleElement:すべてのドキュメントタイプの宣言、コメント、
    要素を削除します
  • removedimensions:viewboxが存在する場(chǎng)合、すべての幅と高さのプロパティが削除されます
  • <style></style>cleanupnumericValues:値を合理的なレベルの精度に回す
  • removeattrs:指定されたすべての屬性を削除
  • 次に、ファイルをsvgstoreに渡して一意のファイルに結(jié)合し、名前を変更して保存します。
  • 數(shù)回使用した後、各プロジェクトのスケジュールを分でスケジュールできるはずです。必要に応じてSVGシンボルファイルをすばやく再構(gòu)築できるようになります。

ここに結(jié)果の例があります(このペンであっても、便利なためにSVGファイルを埋め込みましたが、外部ファイルとして安全にリンクできます):

codepen link 4

警告はありますか?

この方法はスタイルの使用要素に基づいているため、ポリフィル(SVG4Everybodyなど)がそれらを削除する場(chǎng)合に問題があります。

外部シンボリックリンク(すべてのIE)をサポートしていないブラウザでは、svg4Everybodyすべての使用要素を一致するシンボルのコンテンツに置き換えます。したがって、使用に適用されるすべてのCSSルールは有効になりません。

これは、內(nèi)部シンボリック要素(パス、円など)に適合するようにCSSセレクターを調(diào)整することで解決できますが、これは少し難しい場(chǎng)合があります。

ボーナス

このワークフローには無制限のバリエーションがあります。ストローク、テキストなどを処理できます。

探索する価値のあるもう1つの興味深い機(jī)能は、イラストレーターのシンボルの使用です。それらはSVGシンボルとしてエクスポートされ、多くの可能性をもたらします。

‘Reskinnable’ SVG Symbols: How to Make Them (..and Why)

お読みいただきありがとうございます。

スキン可能なSVGシンボルに関するよくある質(zhì)問

Webデザインに他の畫像形式ではなく、SVGシンボルを使用することの利點(diǎn)は何ですか?

SVGシンボルには、JPEG、PNG、GIFなどの他の畫像形式と比較して多くの利點(diǎn)があります。まず、SVGはスケーラブルなベクトルグラフィックスです。つまり、品質(zhì)を失うことなくサイズ変更できます。これは、同じ畫像をさまざまなサイズのさまざまなデバイスに表示する必要があるレスポンシブWebデザインに特に役立ちます。第二に、SVGシンボルはCSSを使用してスタイリングできるため、設(shè)計(jì)の柔軟性が向上します。最後に、SVGのファイルサイズは通常、ビットマップのカウンターパートよりも小さく、ロードをスピードアップしてウェブサイトのパフォーマンスを向上させることができます。

CSSを使用して、SVGシンボルの色を変更できます。デフォルトでは、SVGは親要素の色を継承します。ただし、CSSにSVGまたはその子要素を配置し、目的の色を適用することにより、この設(shè)定をオーバーライドできます。たとえば、屬性を使用するか、fill屬性を使用してアウトラインの色を変更できます。 stroke すべてのWebブラウザーでSVGシンボルを使用できますか?

SVGシンボルは、Chrome、Firefox、Safari、Edgeなどのすべての最新のWebブラウザーで広くサポートされています。ただし、インターネットエクスプローラーの古いバージョン(IE8以下)はSVGをサポートしていません。これらの古いブラウザをサポートする必要がある場(chǎng)合は、PNGまたはJPEG畫像をフォールバックとして提供する必要がある場(chǎng)合があります。

SVGシンボルをアニメーション化する方法は?

HTMLでSVGシンボルを使用できますか?

はい、SVGシンボルはHTMLに直接埋め込むことができます。これは、

および

タグを使用して実行できます。 <svg></svg>タグは、SVGシンボルを定義するために使用され、<symbol></symbol>タグはインスタンス化するために使用されます。これにより、SVGシンボルを一度に定義し、HTML全體で複數(shù)回再利用できます。 <symbol></symbol> <use></use> SVGシンボルをよりアクセスしやすくするにはどうすればよいですか?

SVGシンボルをよりアクセスしやすくするには、svgの

>および

タグを使用して、代替テキストを提供する必要があります。

タグは、SVGの短い説明的なタイトルを提供し、<title></title>タグはより長(zhǎng)い説明を提供します。これらのタグはスクリーンリーダーによって読み取られ、視覚障害のあるユーザーに重要なコンテキストを提供します。 <desc></desc>

CSSでSVGシンボルを使用できますか?

はい、SVGシンボルはCSSの背景畫像として使用できます。これは、SVGをデータURLとしてエンコードし、それをbackground-image屬性の値として使用することで実行できます。ただし、この方法では、SVGをCSSでスタイリングまたはアニメーション化することはできません。

パフォーマンスのためにSVGシンボルを最適化する方法は?

SVGシンボルをパフォーマンスのために最適化する方法はいくつかあります。まず、SVGコードを圧縮してファイルサイズを縮小できます。次に、GZIP圧縮を使用してファイルサイズをさらに削減できます。最後に、HTTP/2を使用してSVGを提供することができます。これにより、より高速で効率的なデータ転送が可能になります。

JavaScriptでSVGシンボルを使用できますか?

はい、SVGシンボルはJavaScriptで操作できます。これにより、色、サイズ、場(chǎng)所、視認(rèn)性など、SVGのプロパティを動(dòng)的に変更できます。 JavaScriptを使用して、SVGをアニメーション化したり、インタラクティブSVGを作成したり、SVGを動(dòng)的にロードすることもできます。

レスポンシブSVGシンボルを作成する方法は?

レスポンシブSVGシンボルを作成するには、絶対ユニット(ピクセルなど)ではなく、SVGの幅と高さに相対単位(割合など)を使用する必要があります。これにより、SVGは親要素でスケーリングできます。また、

屬性を使用して、SVGのアスペクト比と座標(biāo)系を指定することもできます。これにより、スケーリングすることができます。 viewBox

以上が「ReskinNable」SVGシンボル:それらの作り方(..そしてなぜ)の詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國語 Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見つけた場(chǎng)合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

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

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國語版

SublimeText3 中國語版

中國語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Udemyのようなプラットフォームへの開発者のショートカット Udemyのようなプラットフォームへの開発者のショートカット Jun 17, 2025 pm 04:43 PM

Udemyと同様の學(xué)習(xí)プラットフォームを開発する場(chǎng)合、コンテンツの品質(zhì)だけに焦點(diǎn)を當(dāng)てるだけではありません。同様に重要なのは、そのコンテンツがどのように配信されるかです。これは、最新の教育プラットフォームがアクセスしやすく、速く、消化しやすいメディアに依存しているためです。

SaaSの5つの最高の支払いゲートウェイ:究極のガイド SaaSの5つの最高の支払いゲートウェイ:究極のガイド Jun 29, 2025 am 08:28 AM

支払いゲートウェイは、支払いプロセスの重要な要素であり、企業(yè)がオンラインで支払いを受け入れることができます。顧客と商人の間の橋渡しとして機(jī)能し、支払い情報(bào)を安全に譲渡し、取引を促進(jìn)します。 のために

SSL証明書を購入するための費(fèi)用対効果の高い再販業(yè)者プラットフォーム SSL証明書を購入するための費(fèi)用対効果の高い再販業(yè)者プラットフォーム Jun 25, 2025 am 08:28 AM

オンラインの信頼が交渉不可能な世界では、SSL証明書がすべてのWebサイトに不可欠になっています。 SSL認(rèn)定の市場(chǎng)規(guī)模は2024年に56億米ドルと評(píng)価されており、電子商取引事業(yè)の急増により促進(jìn)されていることで、まだ強(qiáng)く成長(zhǎng)しています。

新しい研究は、私たちよりも感情を「理解している」と主張しています&mdash;特に感情的に充電された狀況で 新しい研究は、私たちよりも感情を「理解している」と主張しています&mdash;特に感情的に充電された狀況で Jul 03, 2025 pm 05:48 PM

人間が常に機(jī)械を上回ると信じていたドメインのさらに別のset折のように見えるもので、研究者は現(xiàn)在、AIが私たちよりも感情をよりよく理解することを提案しています。

ハリケーンとサンドストームは、新しいMicrosoftAIモデルのおかげで5,000倍速く予測(cè)できます ハリケーンとサンドストームは、新しいMicrosoftAIモデルのおかげで5,000倍速く予測(cè)できます Jul 05, 2025 am 12:44 AM

新しい人工知能(AI)モデルは、最も広く使用されているグローバル予測(cè)システムのいくつかよりも迅速かつより正確に主要な気象現(xiàn)象を予測(cè)する能力を?qū)g証しています。

デバイスはAIアシスタントに供給し、眠っている場(chǎng)合でも個(gè)人データを収穫します。共有するものを知る方法は次のとおりです。 デバイスはAIアシスタントに供給し、眠っている場(chǎng)合でも個(gè)人データを収穫します。共有するものを知る方法は次のとおりです。 Jul 05, 2025 am 01:12 AM

好むと好まざるとにかかわらず、人工知能は日常生活の一部になりました。電気カミソリや歯ブラシを含む多くのデバイスがAIを搭載しています?!笝C(jī)械學(xué)習(xí)アルゴリズムを使用して、人がデバイスの使用方法、DEVIの使用方法を追跡する

すべてをAIにアウトソーシングすると、自分自身のために考える能力がかかりますか? すべてをAIにアウトソーシングすると、自分自身のために考える能力がかかりますか? Jul 03, 2025 pm 05:47 PM

人工知能(AI)は、人間の脳をシミュレートするための探求として始まりました。今では、日常生活における人間の脳の役割を変える過程にありますか?産業(yè)革命は肉體労働への依存を減らしました。アプリケートを研究する人として

高度なAIモデルは、最大50倍以上のCO&#8322を生成します。同じ質(zhì)問に答えるときの一般的なLLMよりも排出量 高度なAIモデルは、最大50倍以上のCO&#8322を生成します。同じ質(zhì)問に答えるときの一般的なLLMよりも排出量 Jul 06, 2025 am 12:37 AM

最近の調(diào)査によると、AIモデルの機(jī)能を正確に機(jī)能させようとすると、炭素排出量が大きくなります。

See all articles