<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>understandard &#187; AlphaImageLoader</title>
	<atom:link href="http://www.understandard.net/tag/alphaimageloader/feed" rel="self" type="application/rss+xml" />
	<link>http://www.understandard.net</link>
	<description></description>
	<lastBuildDate>Fri, 30 Jul 2010 02:24:56 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>透過PNGを使う時に注意すること２</title>
		<link>http://www.understandard.net/css/css003.html</link>
		<comments>http://www.understandard.net/css/css003.html#comments</comments>
		<pubDate>Wed, 09 Jul 2008 12:31:50 +0000</pubDate>
		<dc:creator>じゅん＠understandard</dc:creator>
				<category><![CDATA[css]]></category>
		<category><![CDATA[AlphaImageLoader]]></category>
		<category><![CDATA[IE6]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[透過PNG]]></category>

		<guid isPermaLink="false">http://www.understandard.net/?p=18</guid>
		<description><![CDATA[前回（透過PNGを使う時に注意すること）の続き。
どうしても透過PNGを使いたい場合、IE6でもちゃんと表示させるには、

AlphaImageLoaderを使う
javascriptを使う

ことになると思います。
A [...]

<dl class="relatives">
	<dt><span>関連投稿</span></dt>
		<dd>			<ul>
								<li>
					<a href="http://www.understandard.net/javascript/javascript002.html" rel="bookmark">IE6 で透過 PNG を使えるようにする javascript</a><!-- (6.48669)-->
					<div class="info">
						<span class="category">category: <a href="http://www.understandard.net/category/javascript" title="javascript の投稿をすべて表示" rel="category tag">javascript</a></span>
						<span class="tags">tags: <a href="http://www.understandard.net/tag/ie6" rel="tag">IE6</a>+<a href="http://www.understandard.net/tag/javascript" rel="tag">javascript</a>+<a href="http://www.understandard.net/tag/transparent-png" rel="tag">透過PNG</a>.</span>
					</div>
				</li>
								<li>
					<a href="http://www.understandard.net/javascript/javascript001.html" rel="bookmark">要素の高さをそろえるjQueryプラグイン</a><!-- (4.70701)-->
					<div class="info">
						<span class="category">category: <a href="http://www.understandard.net/category/javascript/jquery" title="jQuery の投稿をすべて表示" rel="category tag">jQuery</a> &gt; <a href="http://www.understandard.net/category/javascript" title="javascript の投稿をすべて表示" rel="category tag">javascript</a></span>
						<span class="tags">tags: <a href="http://www.understandard.net/tag/inline-block" rel="tag">inline-block</a>+<a href="http://www.understandard.net/tag/javascript" rel="tag">javascript</a>+<a href="http://www.understandard.net/tag/jquery" rel="tag">jQuery</a>.</span>
					</div>
				</li>
								<li>
					<a href="http://www.understandard.net/javascript/javascript004.html" rel="bookmark">タイル状にアニメーションして画像を切り替えるjQueryプラグイン jFancyTile</a><!-- (3.78767)-->
					<div class="info">
						<span class="category">category: <a href="http://www.understandard.net/category/javascript/jquery" title="jQuery の投稿をすべて表示" rel="category tag">jQuery</a> &gt; <a href="http://www.understandard.net/category/javascript" title="javascript の投稿をすべて表示" rel="category tag">javascript</a></span>
						<span class="tags">tags: <a href="http://www.understandard.net/tag/javascript" rel="tag">javascript</a>+<a href="http://www.understandard.net/tag/jquery" rel="tag">jQuery</a>.</span>
					</div>
				</li>
							</ul>
					</dd>
</dl>
]]></description>
			<content:encoded><![CDATA[<p>前回（<a href="http://www.understandard.net/css/css002.html">透過PNGを使う時に注意すること</a>）の続き。</p>
<p>どうしても透過PNGを使いたい場合、IE6でもちゃんと表示させるには、</p>
<ol>
<li>AlphaImageLoaderを使う</li>
<li>javascriptを使う</li>
</ol>
<p>ことになると思います。</p>
<h2>AlphaImageLoaderを使う場合</h2>
<p>Amentiさんの<a href="http://amenti.usamimi.info/ie6png.html">IEと透過PNG</a>という記事にまとめられていて、読むのは大変ですがとても勉強になります。</p>
<p>この中に「標準準拠モードだと効かない」というように書いてあります。<br />
IE6でも標準準拠モードになるように作っている人は要注意の箇所ですね。</p>
<p>AlphaImageLoaderは外部のスクリプトを使わず一番手軽に利用できるIE6の透過PNG対策だと思います。</p>
<h2>javascriptを使う場合</h2>
<p>かなりアバウトな表現になっているのは、同じことをするにも様々なスクリプトがあるから。</p>
<p>その中でも、<a href="http://www.designwalker.com/2006/12/transparent-png2.html/trackback">透過PNGをCSSで背景に指定してIE6や5.5のバージョンでも綺麗に表示してみる &#8211; DesignWalker</a>で紹介されている、「iepngfix.js」は結構使いやすいスクリプトなんじゃないかと思います。</p>
<p>これを使うときは、iepngfix.jsを読み込み、cssで該当箇所（仮にクラスhoge）に以下のように指定する。</p>
<pre class="brush: css;">* html .hoge{
behavior:expression(IEPNGFIX.fix(this));
}</pre>
<p>指定するのはこれだけ。<br />
あとは、このjavascriptを適用するのはIE6以下なので、html内でそれらのブラウザにだけ読ませる。<br />
これをやらなくても「* html」がついてるので、どっちにしろIE7以上では効かないです。</p>
<pre class="brush: xml;">&lt;!--[if lt IE7]&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;iepngfix.js&quot;&gt;&lt;/script&gt;
&lt;![endif]--&gt;</pre>
<p>IE以外のブラウザにはこの対処法は効かないので、[if lt IE7]の部分を[if IE]に変えて、「IEなら」という条件にしてもいいかも知れません。</p>
<p>他に「IE7.js」というライブラリがあります。</p>
<p>これを読み込んでおき、透過PNGに名前をつける時に「XX-trans.png」（XXは任意）という形式にします。<br />
そうすると、backgroundプロパティでこのPNG画像を指定した際に透過されて表示されるというもの。</p>
<p>このライブラリは透過PNGのためだけのライブラリではなく、これを読み込むと、IE6以下でもIE7と同じようなレンダリングをしてくれるという機能まであります。例えばIE6以下で、</p>
<ol>
<li>a以外の要素に:hoverなどの疑似クラスが使えるようになる</li>
<li>position:fixedが使えるようになる</li>
</ol>
<p>というものです。</p>
<p>ただ注意しなければならないのは、既存のサイトにIE7.jsを読み込むと、<strong>IE6用に指定していたcssハックが影響して表示にズレ</strong>が生じてしまいます。気をつけましょう。</p>
<p>それと、IE7.jsについてもう１つ。<br />
サーバー環境にもよるかもしれないんですが、結構重かった記憶が・・・。</p>
<p>一回あるサイトのリニューアルの際に使おうとしたけど、あまりに遅くて導入を諦めたことがあったので、使ってみたい方は一度チェックしてみたほうがいいと思います。<br />
軽かったらぜひ使いたいライブラリです。今後のバージョンアップに期待してます。</p>
<p><ins datetime="2008-07-09T14:05:50+00:00"><span>※2008年7月9日23時5分</span> 追記</ins></p>
<p>記事を更新した直後に発見してしまったので、追記します。</p>
<p><a href="http://coliss.com/articles/build-websites/operation/javascript/1281.html/trackback/">[JS]超軽量で設置も簡単な、透過PNGをIE6で表示するスクリプト -Unit PNG Fix</a></p>
<p>実際に使ったことが無いし、容量が軽いから動作が軽いとも限らないのでなんとも言えませんが、javascriptファイルだけなら1KBありません。ここまでファイルが小さいのは今までになかったんじゃないでしょうか？</p>
<p>ダウンロードしたら、Zipファイルを解凍し、unitpngfix.jsの1行目にある、clear.gifのパスを自分のサーバーのものにする。<br />
画像のパスを変更したら、htmlからunitpngfix.jsを読み込む。<br />
これだけでいいようです。</p>
<p>注意：imgタグにwidthとheightの値を入れておかないと画像が見えなくなってしまうようなので、それだけは気をつけてくれということです。</p>
<p>使ってみた方がいたら感想を教えてもらいたいですね。</p>


<dl class="relatives">
	<dt><span>関連投稿</span></dt>
		<dd>			<ul>
								<li>
					<a href="http://www.understandard.net/javascript/javascript002.html" rel="bookmark">IE6 で透過 PNG を使えるようにする javascript</a><!-- (6.48669)-->
					<div class="info">
						<span class="category">category: <a href="http://www.understandard.net/category/javascript" title="javascript の投稿をすべて表示" rel="category tag">javascript</a></span>
						<span class="tags">tags: <a href="http://www.understandard.net/tag/ie6" rel="tag">IE6</a>+<a href="http://www.understandard.net/tag/javascript" rel="tag">javascript</a>+<a href="http://www.understandard.net/tag/transparent-png" rel="tag">透過PNG</a>.</span>
					</div>
				</li>
								<li>
					<a href="http://www.understandard.net/javascript/javascript001.html" rel="bookmark">要素の高さをそろえるjQueryプラグイン</a><!-- (4.70701)-->
					<div class="info">
						<span class="category">category: <a href="http://www.understandard.net/category/javascript/jquery" title="jQuery の投稿をすべて表示" rel="category tag">jQuery</a> &gt; <a href="http://www.understandard.net/category/javascript" title="javascript の投稿をすべて表示" rel="category tag">javascript</a></span>
						<span class="tags">tags: <a href="http://www.understandard.net/tag/inline-block" rel="tag">inline-block</a>+<a href="http://www.understandard.net/tag/javascript" rel="tag">javascript</a>+<a href="http://www.understandard.net/tag/jquery" rel="tag">jQuery</a>.</span>
					</div>
				</li>
								<li>
					<a href="http://www.understandard.net/javascript/javascript004.html" rel="bookmark">タイル状にアニメーションして画像を切り替えるjQueryプラグイン jFancyTile</a><!-- (3.78767)-->
					<div class="info">
						<span class="category">category: <a href="http://www.understandard.net/category/javascript/jquery" title="jQuery の投稿をすべて表示" rel="category tag">jQuery</a> &gt; <a href="http://www.understandard.net/category/javascript" title="javascript の投稿をすべて表示" rel="category tag">javascript</a></span>
						<span class="tags">tags: <a href="http://www.understandard.net/tag/javascript" rel="tag">javascript</a>+<a href="http://www.understandard.net/tag/jquery" rel="tag">jQuery</a>.</span>
					</div>
				</li>
							</ul>
					</dd>
</dl>
]]></content:encoded>
			<wfw:commentRss>http://www.understandard.net/css/css003.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
