最も考慮すべきは…ページ読み込み速度の高速化でしょう…
デザイン構築に使用する静的な画像を「img」タグで読み込んでいては…
その都度「HTTPリクエスト」が発生する訳ですから…
ページ読み込み速度の遅延の大きな要因になります
「HTTPリクエスト」を減らす解決策は…「CSS Sprites」という手法で…
デザイン構築に使用する静的な画像を一枚にまとめて読み込み…
表示させたい部分の座標を「background-position」プロパティで指定します…
その「CSS Sprites」作成には…結構な手間がかかりますし…
サイトのデザイン構築に使用する静的な画像の一部を変更する場面などは…
頻繁にある訳で…その都度「CSS rule」も書き換える必要があります…
そういった煩雑な手間を一手に引き受けてくれる…
お便利な「CSS Sprites」作成ツールが…
Tonttu for Adobe® AIR™ / collamo
2016年5月の時点で
暗号化接続に未対応なのでリンクを削除
…です
様々なツールを試しましたが…クールなインターフェースとスマートな使い心地で…
他を圧倒して…お便利です……インストールして起動したら…
■img-01
「File」「Open」で画像を選択か…
画像のドラッグアンドドロップで読み込みます…
■img-02
複数画像を開くと…縦並びで…
「offset」が自動付与されて読み込まれます…
なので…並べ替えるため「Sorte」をクリック…
ダイアログが開きます…
「col」が縦並び「row」が横並びですので…
「row」と「IMAGE BASE」をチェックして…
「OK」をクリック…
左上の「FieldWidth」「FieldHeight」は…
出力される画像のサイズですが…
最終段階まで気にする必要はありません…
■img-03
「offset」が「0px」で並べ替えられ…
出力される画像のサイズもリサイズされます…
強調部分のドラッグでサイズ変更出来ます…
■img-04
「Save」で現在の状態を…
プロジェクトファイル…
「ttd」として保存出来ます…
■img-05
出力された「ttd」ファイルは…
後で編集したい場合に読み込めば現在の状態を…
復元出来ますので捨てないようにしましょう…
■img-06
「Export」で「CSS Sprites」用の…
「画像」「CSS rule」「HTML」が出力されます…
■img-07
サイトでは…アイコンからバナーまで…
様々なサイズの画像がありますから…
違うサイズの画像を読み込んでみましょう…
「Sorte」では綺麗に整列しませんから…
ドラッグで移動させます…その際…
だいたいの位置に大雑把に移動させてから…
キーボードの矢印キーで…
画像のポジションを確認しながら微調整すると…
「1px」単位で移動出来ますから効率的です…
■img-08
移動が完了したら…バーをドラッグして出力される画像のサイズを決めて…
「Save」「Export」します…「HTML」は不要なので削除しても大丈夫です…
「Tonttu」での作業は完了です…
続いて…サイトに実装するための「HTML」マークアップ作業です…
煩雑になるので画像を減らして解説します…
出力された「CSS rule」はこんな感じになっています…
出力された Sprite CSS
インデントやコメントアウトだらけですから圧縮し…
「background-repeat」プロパティは画像に記述するようにして…
「span」要素でのマークアップも勘案して「display」プロパティも追加します…
見易くするために改行は入れてあります…
圧縮した Sprite CSS
しかしながら…サイトに記述するには圧縮は必須でしょうが…
サイトデザインの変更を行う場合は全ての画像を入れ替える方が稀で…
通常は一部を入れ替えるだけでしょうから…
ローカルに保存しておくバージョンとして…
「filename」のコメントアウトを残しておけば…
部分的な編集で済むのでお便利です…画像数が増えれば尚更ですね…
「Sprites 画像」を任意の場所にホストし…画像 URL を「Sprite CSS」に記述して…
Blogger用の外部ファイル保存場所として「GitHub」の「GitHub Pages」を活用しよう
Blogger用のファイル保存場所としてのクラウド型オンライン ストレージ「Google Drive」
Blogger用のファイル保存場所としてのクラウド型オンライン ストレージ「Dropbox」
Google Blogger用のファイル保存場所としてのGoogle sites/Picasa
「CSS Sprites」用の「CSS rule」は完成です…
「Sprites 画像」自体も圧縮したほうが…より良いですね…
png 画像を最大70%圧縮「TinyPNG」
更には…圧縮した「Sprites 画像」を「Base64 (data URI scheme)」変換すれば…
「HTTPリクエスト」は発生しません…
画像をbase64エンコードするツール / Syncer
最後は…「HTML」マークアップ作業です…
出力された「HTML」では「div」要素でマークアップされていますが…
「div」要素では記事中で使用する事も勘案すると改行などの関係で…
使い勝手が悪いので「span」要素で…この様にマークアップすると…
<span id="id0"></span> <span id="id1"></span> <span id="id2"></span> <span id="id3"></span>こう表示されます…
ツールチップを表示させたい場合は「title」属性を記述して下さい…
実際にサイトに実装するにあたっては…
id「#」表記を…class「.」表記に変更したほうが使い勝手が良いです…
クラス表記に変更した Sprite CSS
更には…静的な画像の場合は必要ありませんが…
絵文字など…記事中で頻繁に使用する画像は…
定型文管理ソフトに登録しておくとお便利です…
Clibor / クリップボード履歴と定型文管理ソフト
以上です…最後までお読みいただきましてありがとうございます…
0 Comments :
View Comments :: Click!!
0 Comments :
Post a Comment :: Click!!
コメントを投稿