IE10以下のimgタグ問題の解決方法

IE10以下のimgタグ問題の解決方法

問題を見つける

以前、簡単なデモを書いたのですが、IE10以下では動作しないことがわかりました。ここにコードの一部を示します。

HTML:

<div class="all" id="box">
    <img id="画像" src="psb.png" 幅="512" 高さ="1470" >
    <span id="上へ"></span>
    <span id="down"></span>
</div>

CS: ...

。全て{ 
    位置: 相対的;
    幅: 512ピクセル; 
    高さ: 400px; 
    境界線: 1px実線 #000; 
    マージン:100px 自動; 
    オーバーフロー: 非表示;
}
スパン{
    幅: 512ピクセル; 
    高さ: 200px; 
    位置: 絶対; 
    左: 0; 
    上: 0; 
    カーソル: ポインタ;
}
#下{ 
    上:自動; 
    下部: 0; 
}

JS:

var ops = document.getElementById('画像'),
    oup = document.getElementById('up')、
    odown = document.getElementById('down')、
    obox = document.getElementById('box'),
    タイマー = null;
    数値 = 0;

oup.onmouseover = 関数(){             
    タイマーの間隔をクリアします。
    タイマー = setInterval(関数(){
        数値 -= 4;
        if(数値 < -1070){
            数値 = -1070;
            タイマーの間隔をクリアします。
        }
        ops.style.marginTop = num+'px';
    },30)
}

odown.onmouseover = 関数(){   
    タイマーの間隔をクリアします。
    タイマー = setInterval(関数(){
        数値 += 4;
        if(数値 > 0){
            数値 = 0;
            タイマーの間隔をクリアします。
        }
        ops.style.marginTop = num+'px';
    },30)
}

obox.onmouseout = 関数(){ 
    タイマーの間隔をクリアします。
}

実現される効果は、マウスが上のスパンに移動すると画像が上に移動し、下のスパンに移動すると画像が下に移動し、マウスを離れると停止することです。

ただし、IE10 より前のバージョンでは、マウスをスパン上に移動しても効果はありません。

複数回のテストを経て、2つの解決策を見つけました。

方法1:

テストの結果、スパンに背景色を追加すると、マウスをその上に移動したときに機能することがわかりました。

コードを追加:

 背景: #fff;
 不透明度: 0;
 フィルター:アルファ(不透明度=0);

背景色を追加し、透明に設定します。不透明度には互換性の問題があるので、フィルターを追加します。最終的な効果は以前とまったく同じです。

方法2:

後で友人に聞いたところ、IE10ではimgタグがネストされるので、divの外側にimgタグを置くようにと言われました。

<img id="画像" src="psb.png" 幅="512" 高さ="1470" >
<div class="all" id="box">       
    <span id="上へ"></span>
    <span id="down"></span>
</div>

要約する

上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。

<<:  MySQL-8.0.26 構成グラフィックチュートリアル

>>:  Docker ケース分析: Redis サービスの構築

推薦する

Vueはフィルターを使用して日付をフォーマットします

この記事では、フィルターを使用して日付をフォーマットするVueの具体的なコードを参考までに紹介します...

MySQL ダーティ ページ フラッシュとテーブル スペースの縮小の原理の分析

mysql ダーティページWAL メカニズムにより、InnoDB はステートメントを更新するときに、...

vue-amap のインストールと使用手順

以前、Amap API を非同期にロードする方法を紹介しました。今回は、vue-amap の使用方法...

uniappは録音アップロード機能を実現

目次uni-app の紹介HTML部分js部分インスタンスを作成する録音を開始録音終了録音を再生再生...

JavaScript デザインパターンの学習 アダプタパターン

目次概要コードの実装要約する概要アダプタ パターンは、デザイン パターンの動作パターンのパターンです...

IE6かどうかを判定する最短JS(IEの書き方)

ブラウザが IE のどのバージョンであるかを検出するためによく使用される JavaScript コー...

HTML ページの部分更新の実装コード

イベント応答の更新: 要求されたときのみ更新1. JS HTML DOM または jQuery を介...

CSS スタッキングと Z インデックスのサンプルコード

カスケードとカスケードレベルHTML 要素は 3 次元の概念です。水平方向と垂直方向に加えて、「Z ...

Chrome デベロッパー ツールの詳細な紹介 - タイムライン

1. 概要ユーザーは、アクセスする Web アプリケーションがインタラクティブでスムーズに実行される...

DockerでLinuxシェルコマンドを実行する方法

Docker でシェル コマンドを実行するには、コマンドの前に sh -c を追加する必要があります...

CentOS 起動時にカーネルモジュール overlayfs 操作を自動的にロードする

CentOS でカーネル モジュールを自動的にロードするには、/etc/sysconfig/modu...

0.1秒の価値!フロントエンドのウェブページの高速化の問題について簡単に説明します

私が現在の仕事の面接を受けたとき、リーダーが真剣にこう言っていたのを覚えています。「今の世の中はイン...

Vueのインストール方法の紹介

目次1. グローバルに登録されたコンポーネント2. グローバルカスタム指示vue 、新しいプラグイン...

Vue lazyload 画像遅延読み込み例の詳細な説明

ドキュメント: https://github.com/hilongjw/vue-lazyload 1...