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 サービスの構築

推薦する

Docker で Node.js をデプロイする方法

序文プロジェクトでは中間層としてNodeを使用し、Nodeのデプロイにはdockerを使用します。こ...

ウェブページを作るときに知っておくべきいくつかのスキル

1. IE6 では z-index が無効です。 CSS では、階層を変更するために z-index...

Docker コンテナのネットワーク障害に対する 6 つの解決策

Docker コンテナのネットワーク障害に対する 6 つの解決策注: 以下の方法は、コンテナ内のパブ...

JavaScript でオブジェクトをトラバースする 5 つの方法 サンプルコード

目次準備する5つの武器…のためにオブジェクト.キーオブジェクト.getOwnPropertyName...

IE6はmin-widthを実装している

まず第一に、この効果は古い話題であるはずだということはわかっています。今日ファイルを整理していたら、...

CentOS7 で MySQL 5.7.24 をコンパイルしてインストールする詳細なチュートリアル

目次依存関係をインストールするブーストをインストールMySQLをコンパイルしてインストールする構成依...

MySQLスローログクエリの詳細な説明

遅いログクエリ機能スロー ログ クエリの主な機能は、設定された時間しきい値を超える SQL ステート...

MySQL がデフォルトの分離レベルとして繰り返し読み取りを選択する理由

目次Oracle 分離​​レベルMySQL 分離レベル要約する多くの読者は、MySQL のトランザク...

Vue Element-ui フォーム検証ルールの実装

目次1. はじめに2. ルール検証の入力モード2.1 サンプルコード2.2、フォーム項目2.3. 小...

MySQLデータベースは重複データを削除し、メソッドインスタンスを1つだけ保持します

1. 問題の紹介ユーザー テーブルに 3 つのフィールドが含まれているシナリオを想定します。 id、...

プロジェクトにおける CSS グリッドシステムの柔軟な使用方法の詳細な説明

序文CSS グリッドは通常、さまざまなフレームワークにバンドルされていますが、実際のビジネス ニーズ...

Mysql トランザクションで Update を実行するとテーブルがロックされますか?

2つのケース: 1. 索引あり 2. 索引なし前提条件:方法: コマンドラインを使用してシミュレー...

MySQL MyISAM デフォルト ストレージ エンジンの実装原則

デフォルトでは、MyISAM テーブルはディスク上に .frm (テーブル構造ファイル)、.MYD ...

JavaScriptはスクロールバーの位置を取得し、ページをアンカーポイントまでスライドします。

序文この記事は、私が最近仕事で遭遇した問題を記録したものです。アプリネイティブとフロントエンドのh5...

Reactでコンポーネントロジックを共有する3つの方法

簡単に説明すると、これら 3 つの方法は、レンダリング プロップ、高階コンポーネント、カスタム フッ...