CREATIONS-1-

もじばけらった

もじばけらった

入力された文章を様々な文字コードに相互変換させて表示する、文字化けの解読を助けるサービスです。

Web Services

  • 入力された文章を様々な文字コードに相互変換させて表示する、文字化けの解読を助けるサービスです。
  • ご近所で頑張っているフリーランサー同士を結ぶ、仲間探しサービスです。
  • ユーザー登録には音源のアップロードが必須という、中級者以上に的を絞ったバンドメンバー募集サイトです。
  • 皆様からのご投稿情報を基に、かっこいいバナー・かわいいバナー・クリエイティブなバナーなどを収集・まとめて一覧できる、バナー専門のギャラリーサイトです。
  • Google・WIKIPEDIA・YouTube・twitter・facebookの5サイトの検索窓を1ページ内で統合させたウェブサービスです。
  • YouTubeにアップロードされている二つの動画を同時再生して、混ざり合う音声を楽しむウェブサービスです。
  • オンラインで複数人とのリアルタイムなブレーンストーミングが出来て、出たアイディアはcsvファイルでダウンロード出来るというウェブサービスです。
  • 複数のRSSフィードをひとつのタブにまとめて読み込み、そんなタブを最大5つまで表示させるスクリプトジェネレーターです。

WordPress Plugins

  • A8.netをはじめとした、各種バナー広告をWordPress上で管理するためのプラグインです。
  • JavaScriptで作られたBSDライセンスの「snowstorm.js」を使って、webページ上に幽玄閑寂の如く「雪を降らせる」という、なんとも情緒あふれるプラグインです。
  • 記事の冒頭に「記事を全て読み終えるまでにかかる、おおよその所要時間」を表示させるプラグインです。

Other Creations

  • 2011年3月14日作成。当バナーにおける一切の著作権は放棄しています。出来る人が、出来る事を、出来る範囲で。
  • 商用利用、全然OK!バックリンクも使用報告も要りません!使用に関して、一切の制約はありません!!そんな壁紙です。
  • いま現在サーバの中にあるフォルダとファイルを表示するPHPファイルです。

AUTHORIZED BY-2-

smkn

Author

smkn(1979 / 5.22 / ♂)

Contact

Profile

東京都内でデザイン/コーディング/プログラミングからWEBマーケティング/SEO施策/ITコンサルティングまで、フリーランス「kiki verb」としてオールラウンド・クリエイターしています。
ホームページ制作・webサービス企画開発に関するご質問やご相談など、お気軽にどぞ☆

Skills

  • Photoshop
  • Illustrator
  • Flash
  • HTML
  • CSS
  • JavaScript
  • jQuery
  • PHP
  • PEAR
  • WordPress
  • MySQL

Tools

  • Photoshop
  • Illustrator
  • Flash
  • Firefox
  • Google chrome
  • Thunderbird
  • 秀丸エディタ
  • EmEditor
  • XAMPP
  • phpMyAdmin
  • FFFTP
  • WinSCP
  • Namery
  • DF
  • Devas
  • IcoFX
  • Color Dialog 003
  • QRWindow
  • Unlocker
  • Janetter

Pastime

  • 和太鼓
  • ドラム
  • バレーボール
  • 沖縄
  • 温泉
  • コーヒー
  • カクテル
  • 芋焼酎
  • あぐー
  • マーケティング理論
  • 宇宙物理学
  • 競馬
  • 麻雀
  • オートバイ
  • ネコ

RECENT SHOUTS-3-

IE6で透過pngを表示させるオススメscript、「DD_belatedPNG.js」

2009年 02月 15日

  • このエントリーをはてなブックマークに追加
  • このエントリーをfacebookでシェアする
この記事の所要時間: 749

>> 詳細な使用法と注意点を追加エントリーしました。

いまだ絶大なシェアを誇るIE6(Internet Exproler 6)ですが、WEB制作者ならご存知の通り、さまざまなバグ・不具合を内包しております。

・CSSでfloatしたブロックのmarginが倍になる。
・後方互換モードの場合、text-alignが子要素にまで影響する。
・透過png画像が透過されない。

上記以外にも、それはいくつもの制作者泣かせの問題があり、業界内では「IE6氏ねばいいのに」とまで言われているブラウザですが、前述の通りシェアは絶大なので、対応しないワケにもいかず。

すでにいくつもの対応策が出回っておりますが、その中でも自分的に一番オススメするのが、「DD_belatedPNG.js」を使用する方法です。

有名どころの対応策を併記・比較しながら、どこがオススメなのかを含めてエントリーしたいと思います。

有名なIE6透過png対応策

1.AlphaImageLoader

これはJavaScriptを使わず、CSSだけで対応させる場合に有効な方法です。JavaScriptはどうしても使いたくなかったり、CSS以外いじれない状況の場合は、この方法がベストかもしれません。

IE6には透過png表示の為に、独自のCSSフィルターとして「AlphaImageLoader」というものがあります。これはDirectXを使用して、背景と画像の間に画像を配置する事で透過を再現するというものです。

この「AlphaImageLoader」フィルターをpng画像に適用することで、他ブラウザと同様に透過png画像を表示させます。

ある意味、最も仕様に忠実な対応方法ですが、使い勝手や汎用性を考えるとあまりオススはできません。

詳しい使い方を紹介しているサイト:

この方法の特徴:

  1. 描画処理が遅くメモリも大きく消費するので、ページ全体が重くなる。
  2. ブロック要素の背景画像に使用すると、そのブロック内のリンクが機能しなくなる。
  3. IE6のみに適応させるためのCSSハックが必要。
  4. 適応させたい箇所に、都度記述しなければならない。
  5. 背景にリピート描画(background:repeat)ができない。

2.iepngfix.js

導入や使用に関する情報も多数あり、さまざまなサイトで使用されている実績も持つ、IE6透過png対応策の王道ともいえるこの方法。

原理としては、前述の「AlphaImageLoader」を、JavaScriptを用いて必要箇所に適応させるものです。

もう少し詳しく書くと、AlphaImageLoaderフィルターを使用した「iepngfix.htc」というスクリプトを、JavaScriptを用いて使用するものになります。

AlphaImageLoaderフィルターを直接使用する際の欠点、「ブロック要素の背景画像に使用すると、そのブロック内のリンクが機能しなくなる」という部分を補い、JavaScriptとして独立しているため、新規サイト制作時にも流用できるというスグレモノ。

ただし、上記の通り基本はAlphaImageLoaderフィルター+iepngfix.htcなので、これらの不具合が継承されている部分もあります。

配布先・制作者様のサイト:

詳しい使い方を紹介しているサイト:

この方法の特徴:

  1. AlphaImageLoaderフィルターを使用するので、描画処理自体は遅く、メモリも大きく消費する。
  2. AlphaImageLoaderフィルター使用時の致命的バグである「適応ブロック内のリンクが機能しない」問題を回避できる。
  3. 導入が簡単なうえ、解説サイトなども多数ある。
  4. CSSに都度フィルターを適応させるカタチではないので、既存サイトにIE6透過png対応をする時にも導入が容易。
  5. やはり背景にリピート描画(background:repeat)ができない。

3.ie7.js

こちらは今後主流になっていきそうな薫香プンプンの方法です。

このJavaScriptを導入し、pngの画像名を「○○-trans.png」とするだけで、IE6でも綺麗に透過されます。

このスクリプトは透過pngの対応をはじめ、前述のIE6独自のCSS諸問題を解決するためのもので、いうなれば「IE6がマトモになるように改造しちゃうぉ☆」というコンセプトのスクリプトです。

なので、もしすでにCSSなどでIE6対応ハックを使用している場合、このスクリプトが影響してしまい、表示がおかしくなる場合があります。

新規で制作する場合には問題ないですが、既存サイトでの導入は少し難しいかもしれません。

配布先・制作者様のサイト:

詳しい使い方を紹介しているサイト:

この方法の特徴:

  1. 画像名を「○○-trans.png」とするだけで対応できるので、導入がとても簡単。
  2. 透過png問題だけじゃなく、CSSのバグにも対応しているので、新規サイト制作時には利便性が高い。
  3. AJAXやiframeでページ内にこのスクリプトを使用したページを読み込むと、たまにIEごと落ちる。
  4. やっはり背景にリピート描画(background:repeat)ができない。

その他の透過png対応策

これら以外にもたくさんの透過png対応策があります。ここからはいくつか箇条書き系形式で紹介します。

4.IE PNG FIX v2.0 Alpha

配布先・制作者様のサイト:

詳しい使い方を紹介しているサイト:

この方法の特徴:

  1. 背景のリピート描画(background:repeat)に対応(ただし当方の環境だと、異常に重かったです)。
  2. ライセンスがLGPLと明記されているので、使い方によっては少し勝手が悪い。

5.Unit PNG Fix

配布先・制作者様のサイト:

詳しい使い方を紹介しているサイト:

この方法の特徴:

  1. JavaScriptの容量が約2kbと、とても軽い。
  2. 背景にpng画像を指定できない。

6.jquery.pngfix.js

配布先・制作者様のサイト:

詳しい使い方を紹介しているサイト:

この方法の特徴:

  1. jQueryを使用しているのが前提なので、そうでない場合は導入に手間がかかる。
  2. 背景にリピート描画(background:repeat)ができない。

ここで登場!「DD_belatedPNG.js」

上記の対応策は基本的にAlphaImageLoaderフィルターを使用しており、そのシステム上どうしても描画が重くなる。

さらに背景リピートに対応していなかったり、余計なファイルをいくつも用意しなければいけなかったりと、「IE6憎し」の感情ばかりが高ぶってしまう。

しかし、ここで紹介する「DD belatedPNG.js」である(やっと本題にたどり着いた…)。

これは前述の「AlphaImageLoader」ではなく、「VMC」というものを利用して透過png画像を描画するものである。

処理が重い・背景リピートできない・リンクが機能しない、といったAlphaImageLoaderが根本にある故の問題点がそもそもこの「DD belatedPNG.js」には存在しないのである。

導入も簡単で、ライセンスもMIT。個人的にはこれで透過png問題の最終回答としました!

7.DD_belatedPNG.js

配布先・制作者様のサイト:

詳しい使い方を紹介しているサイト:

この方法の特徴:

  1. 描画処理がAlphaImageLoaderと比べて断然高速なので、ページをすぐに表示できる。
  2. 背景にリピート描画(background:repeat)が可能。
  3. ブロック内の背景にpngを配置しても、ちゃんとリンクが機能する。
これから新規サイトを制作する方も、既存のサイトに透過png対応策を導入する方も、ぜひこの「DD_belatedPNG.js」を検討してみてはいかがでしょーか。

>> 「DD_belatedPNG.js」の詳細な使用法と注意点を追加エントリーしました。

  • このブログのRSSを購読する
  • このブログをtwitterでつぶやく
  • このブログをFacebookで共有する
  • このブログをはてなブックマークで共有する

Search

  • Recent
  • Random

Contact

お名前※必須

ご連絡先メールアドレス

お問い合わせ内容※必須


Advertisement

Affiliate

Advertisement