検索
ホームページウェブフロントエンドhtmlチュートリアルJs または CSS フィルターを使用して、IE6 IE6PNG で PNG 画像の半透明効果を適切に実現する_html/css_WEB-ITnose

次に、IE6 で PNG 画像が不透明になるためのいくつかの解決策を紹介します

1. 独自の PNG を使用し、IE6 を解放します

まず、PNG 画像を作成するときに、GIF 画像として保存します。 GIF 画像の透明度をサポートし、それを CSS で定義します

.pngtest{ background:url(mark.png); _background:url(mark.gif);}

長所: 便利、高速、そして非常に簡単に使用できます

短所: 部分的にしか透明でない PNG 画像の場合、この方法はより効果的ですが、画像は半透明です。この方法は実現できません

この方法を拡張する別の解決策: PS または他の画像編集ツールを使用して、PNG 画像を 8 ビット形式で保存し、IE6 が透明度をサポートするようにします

2. CSS フィルターを実装します。 PNG 画像は半透明です

.pngwrap{ padding:80px; background:green;}.pngtest{ width:165px; height:50px; overflow:hidden; text-indent:-9999em;background:url(http://www.qmtx3.com/data/mark/mark.png) no-repeat;_background:none;_filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='http://www.qmtx3.com/data/mark/mark.png' sizingMethod='scale' enabled=true);}

PNG 画像の透明度の問題を解決するために CSS フィルターを使用する IE6 のテスト

コードの説明: _ プレフィックスが付いた css 属性は IE6 でのみ認識できます。なぜ _background なのかについては次のとおりです。 none; が追加されます。その理由は、定義された背景イメージ (属性の Z インデックスとして理解できます) のレイヤー深度がフィルターのレイヤー深度よりも高いため、フィルターによって定義されたイメージがブロックされるためです。ここで、IE6 の背景は none に設定する必要があります。PS: フィルター内の画像パス。相対パスを使用する場合は、CSS ではなくページに対する相対パスにする必要があります。

利点: JS パッチは必要なく、単なる PNG 画像であるため画像の維持コストが低くなります

欠点: フィルターで定義された画像は、background-position: (位置決め) background-repeat: をサポートしていません。 ; (tile) 属性があるため、CSS Sprite 技術が使用できず、リンク a タグにこのメソッドを適用すると、リンクがクリックできない場合があります。 a タグの位置:relative

3. HTC プラグイン PNG イメージ IE6 を許可します

バージョン 5.5 以降、Internet Explorer (IE) は Web 動作の概念をサポートします。これらの動作は、接尾辞 .htc が付いたスクリプト ファイルによって記述されます。このスクリプト ファイルは、プログラマが HTML ページ上のほぼすべての要素に適用できるメソッドと属性のセットを定義します。 詳細な htc ファイルの紹介については、着実に実行してください

IE6 ブラウザ PNG 画像の透過 HTC プラグインをダウンロードします

iepngfix.htc およびblank.gif ファイルを Web サイトのディレクトリにコピーします (blank.gif、iepngfix.gif をコピーします)。 htc、iepngfix_tilebg.js (このファイルは位置属性と繰り返し属性をサポートするために不可欠です) を特定の場所にコピーします。)

定義は次のように PNG 画像のタグで定義されます。CSS スタイル

img,div{behavior:url(iepngfix.htc);}

修正iepngfix.htc IEPNGFix.blankImg = 'images/blank.gif'; のパスは画像のパスです

IE6 ブラウザに JS ファイルをロードさせます

<!--[if IE 6]><script type="text/javascript" src="../js/iepngfix_tilebg.js"></script><![endif]-->

利点: これを設定すると、サイト全体が次のようになります。非常に使いやすく、一度設定すれば一生使えます

短所: 相対的な設定方法、Web サイトにはさらに 3 つのファイルがあり、要素ホバーなどの疑似クラスはサポートされず、CSS スプライト テクノロジーは使用できません。ページが読み込まれると、PNG 画像の透明な領域が灰色になることを確認してください。

4. CSS バージョンの JS ソリューション

このメソッドには、3 番目のメソッドの圧縮パッケージに含まれる透明なblank.gif画像も必要です。ここでは個別に CSS スタイルを定義しません

img{_azimuth:expression(this.pngSet?this.pngSet=true:(this.nodeName == "IMG" && this.src.toLowerCase().indexOf('.png')>-1?(this.runtimeStyle.backgroundImage = "none",this.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + this.src + "', sizingMethod='image')",this.src = "blank.gif"):(this.origBg = this.origBg? this.origBg :this.currentStyle.backgroundImage.toString().replace('url("','').replace('")',''),this.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + this.origBg + "', sizingMethod='crop')",this.runtimeStyle.backgroundImage = "none")),this.pngSet=true);}

コードの説明: this.src = "blank.gif" パスも CSS ファイルではなくページ ファイルに対して相対的です

利点: このメソッドは比較的シンプルです

欠点: 透明な画像blank.gifを追加する必要があり、imgタグのみをサポートし、要素の設定をサポートしません PNGの背景画像は要素のホバーおよびその他の疑似クラスをサポートしません。

5. オリジナルの JavaScript ソリューション

IE6 PNG 画像の不透明度を解決するための JavaScript 用のプラグインが多数あります

プラグイン 1 つ: iepngfix ダウンロードIE6 ブラウザ PNG 画像の透過 iepngfix プラグイン

IE6 ブラウザに JS ファイルをロードさせます

<!--[if IE 6]><script type="text/javascript" src="js/iepngfix.js"></script><![endif]-->

プラグイン 2

: DD_belatedPNG このプラグインは、実際の 1 つのプラグインと見なされるべきです使い方は非常にプラグインです

IE6 ブラウザ用の DD_belatedPNG プラグインをダウンロード PNG 透過画像

このブログのバックアップ: DD_belatedPNG.js

<!--[if IE 6]><script type="text/javascript" src="js/DD_belatedPNG.js"></script><![endif]-->

使用法:

DD_belatedPNG.fix(".pngtest,#pngtest,.pngtest img,.pngtest:hover");

れーい

fix() パラメータは透明な要素またはサブ要素に渡す必要があります。このメソッドは基本的に jQuery の $ の選択と同じですが、jQ ではスペースを使用するのに対し、複数の要素は「,」で区切られます。ファイルの最後に追加できます

w3cfuns の解決策は、png を使用する各タグに ID またはクラスを追加してから、

<!--[if IE 6]>    <script type="text/javascript" src="js/DD_belatedPNG.js"></script>    <script language="javascript" type="text/javascript">    window.onload = function(){        DD_belatedPNG.fix("*");    }    </script><![endif]-->

このように、class="pngFix xx bbb" を追加します。 pngFix がクラスに含まれている限り、ページ上で透明にする必要がある要素に適用されます

利点: img タグ、CSS スプライト、背景、タイル、疑似クラスをサポート、何も設定する必要はなく、JS を導入するだけですいいねして使ってください

缺点:加载初期PNG图片会出现灰色

插件三:EvPng

该插件使用方法包括优缺点都跟DD_belatedPNG相同,不再详述

下载IE6浏览器PNG图片透明EvPng插件

<!--[if IE 6]>    <script type="text/javascript" src="js/EvPng.js"></script>    <script language="javascript" type="text/javascript">    window.onload = function(){        EvPNG.fix("*");    }    </script><![endif]-->

 

插件四:jQueryPngFix插件

下载IE6浏览器PNG图片透明jQueryPngFix插件

博客备份:JqueryPngFix

修改pngfix.js文件中blankgif: 'images/blank.gif'透明GIF图片路径为相对页面路径

让IE6浏览器加载JS文件

<!--[if IE 6]><script type="text/javascript" src="js/pngfix.js"></script><![endif]-->

 

优点:支持img、css背景

缺点:需要jQuery库支持,不支持CSS Sprite、平铺、伪类,加载初期会出现灰色

有了这种方法htc的解决方案,显得多于了,不过这里介绍的htc解决IE6 PNG透明问题只是htc功能的冰山一角,htc在其他方面的应用远远比这强大的多

参考:

http://www.w3cfuns.com/forum.php?mod=viewthread&tid=297

http://www.cnblogs.com/rock506/archive/2010/11/30/1892067.html

http://www.xuanfengge.com/ie6-png-transparency-solution.html

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
HTMLタグと属性に一貫したコーディングスタイルを使用することの重要性を説明します。HTMLタグと属性に一貫したコーディングスタイルを使用することの重要性を説明します。May 01, 2025 am 12:01 AM

コードの読みやすさ、保守性、効率を向上させるため、一貫したHTMLエンコーディングスタイルは重要です。 1)低ケースタグと属性を使用します。2)一貫したインデントを保持し、3)シングルまたはダブルの引用符を選択して固執する、4)プロジェクトのさまざまなスタイルの混合を避け、5)きれいなスタイルやEslintなどの自動化ツールを使用して、スタイルの一貫性を確保します。

ブートストラップ4にマルチプロジェクトカルーセルを実装する方法は?ブートストラップ4にマルチプロジェクトカルーセルを実装する方法は?Apr 30, 2025 pm 03:24 PM

Bootstrap4にマルチプロジェクトカルーセルを実装するソリューションBootstrap4にマルチプロジェクトカルーセルを実装するのは簡単な作業ではありません。ブートストラップですが...

DeepSeekの公式Webサイトは、マウススクロールイベントの浸透の影響をどのように達成していますか?DeepSeekの公式Webサイトは、マウススクロールイベントの浸透の影響をどのように達成していますか?Apr 30, 2025 pm 03:21 PM

マウススクロールイベントの浸透の効果を実現する方法は? Webを閲覧すると、いくつかの特別なインタラクションデザインに遭遇することがよくあります。たとえば、DeepSeekの公式ウェブサイトでは、...

HTMLビデオの再生コントロールスタイルを変更する方法HTMLビデオの再生コントロールスタイルを変更する方法Apr 30, 2025 pm 03:18 PM

HTMLビデオのデフォルトの再生コントロールスタイルは、CSSを介して直接変更することはできません。 1. JavaScriptを使用してカスタムコントロールを作成します。 2。CSSを介してこれらのコントロールを美化します。 3. video.jsやPLYRなどのライブラリを使用すると、互換性、ユーザーエクスペリエンス、パフォーマンスを検討してください。プロセスを簡素化できます。

お使いの携帯電話でネイティブセレクトを使用することにより、どのような問題が発生しますか?お使いの携帯電話でネイティブセレクトを使用することにより、どのような問題が発生しますか?Apr 30, 2025 pm 03:15 PM

携帯電話でネイティブセレクトを使用する際の潜在的な問題は、モバイルアプリケーションを開発するときに、ボックスを選択する必要があることがよくあります。通常、開発者...

お使いの携帯電話でネイティブ選択を使用することの欠点は何ですか?お使いの携帯電話でネイティブ選択を使用することの欠点は何ですか?Apr 30, 2025 pm 03:12 PM

お使いの携帯電話でネイティブ選択を使用することの欠点は何ですか?モバイルデバイスでアプリケーションを開発する場合、適切なUIコンポーネントを選択することが非常に重要です。多くの開発者...

Three.jsとOctreeを使用して部屋で3人のローミングの衝突処理を最適化する方法は?Three.jsとOctreeを使用して部屋で3人のローミングの衝突処理を最適化する方法は?Apr 30, 2025 pm 03:09 PM

Three.JSとOctreeを使用して、部屋でのサードパーソンローミングの衝突処理を最適化します。 3つのjsでoctreeを使用して、部屋でサードパーソンローミングを実装し、衝突を追加してください...

お使いの携帯電話でネイティブセレクトを使用する場合、どのような問題が発生しますか?お使いの携帯電話でネイティブセレクトを使用する場合、どのような問題が発生しますか?Apr 30, 2025 pm 03:06 PM

モバイルデバイスでアプリケーションを開発する際に携帯電話でネイティブセレクトの問題は、ユーザーが選択を行う必要があるシナリオに遭遇することがよくあります。ネイティブセル...

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

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

ホットツール

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 Mac版

SublimeText3 Mac版

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

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。