1. はじめにイメージマップを使用すると、画像の領域をホットスポットとして指定できます。この領域にマウスを移動すると、いくつかのコンテンツ情報が表示されます。もちろん、この領域をクリックしてジャンプし、画像ナビゲーションと同様の機能を実装することもできます。 私はインターネットで上記のような画像を見つけました。マウスを各人物の上に移動すると長方形のボックスが表示され、それをクリックすると対応する Web サイトにジャンプできるという機能を実現したいと考えています。 効果は以下のとおりです。 2. コードの実装1. 最初に行う必要があるのは、ページに画像を追加し、名前付き div に配置することです。 <div class="イメージマップ"> <img 幅="500" 高さ="350" src="test.jpg"> </div> 2. 次に、画像の後に各人のウェブサイトリンクのリストを追加します。リスト項目内の人物を識別するために、各リスト項目にクラスを割り当てる必要があります。各リンクに人物の名前を含む <div class="イメージマップ"> <img 幅="500" 高さ="350" src="test.jpg"> <ul> <li class="baidu"> <a href="https://www.baidu.com" target="_blank"> <span class="note">百度</span> </a> </li> <li class="tengxun"> <a href="https://www.qq.com" target="_blank"> <span class="note">テンセント</span> </a> </li> <li class="xinlang"> <a href="https://www.sina.com.cn" target="_blank"> <span class="note">シナ</span> </a> </li> <li class="taobao"> <a href="https://www.taobao.com" target="_blank"> <span class="note">タオバオ</span> </a> </li> <li class="jd"> <a href="https://www.jd.com" target="_blank"> <span class="note">京東</span> </a> </li> </ul> </div>
3. 外側の div の幅と高さを、画像のサイズと一致するように設定します。次に、div の位置プロパティを relative に設定します。これにより、含まれるリンクを div (つまり、画像) の端を基準にして絶対的に配置できるようになります。 リストの黒い点がページに表示されないようにし、リスト項目の内側と外側の余白も削除したいと思います。 .イメージマップ{ 幅: 500ピクセル; 高さ: 350ピクセル; 位置: 相対的; } .imagemap ul { マージン: 0; パディング: 0; リストスタイル: なし; } 4. 次に、リンクにスタイルを適用します。リンクを絶対的に配置します (外側の div で position 属性を relative に設定しているため、ここでの配置は div に対して相対的であり、div と画像の幅と高さは同じで、画像の左上隅からの配置に相当します)。そして、対応する人物に配置してホットスポットを形成します。ただし、まず必要なクリック領域を作成するために、幅と高さを設定する必要があります。 .imagemap { 位置: 絶対; /*領域を形成できるようにブロックレベル要素に変換します*/ 表示: ブロック; 幅: 50px; 高さ: 60px; テキスト装飾: なし; } .imagemap .baidu a { 上: 70px; 左: 65px; } .imagemap .tengxun a { 上: 85px; 左: 150px; } .imagemap .xinlang a { 上: 70px; 左: 230px; } .imagemap .taobao a { 上: 70px; 左: 305px; } .imagemap .jd a { 上: 70px; 左: 365ピクセル; } /*マウスを移動するとボックスが表示されます*/ .imagemap a:hover { 境界線: 1px 白の実線; } 5. 次に、マウスを移動したときに表示されるテキスト コンテンツのスタイルを設定する必要があります。文字の上に表示し、背景色とパディングを設定し、テキストを中央に配置するようにします。 .imagemap .note { 位置: 絶対; 上: -2em; 左: -100em; 背景色: #42b983; 色: 白; 幅: 2em; テキスト配置: 中央; パディング: 0.2em 0.5em; 境界線の半径: 5px; } .imagemap a:hover .note { 左: 0; } 知らせ:
また、通常であれば、インライン要素の幅と高さを設定するのは意味がありません。しかし、上記のコードでは、ここで span が絶対配置されているため、span の幅をうまく設定できます。絶対配置後のインライン要素の幅と高さを設定できます。 知識ポイント: インライン要素の幅と高さを設定するいくつかの方法
6. いいえ、テストできます。これで、簡単なイメージ マッピングが実装されました。 CSS でイメージ マッピングを実装する方法についての記事はこれで終わりです。CSS でイメージ マッピングを実装する詳細については、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 |
<<: Linux の GRUB ブート プログラムの暗号化の概要
HTML段落段落は <p> タグによって定義されます。例<p>これは段落で...
目次デバッガーを使用する理由は何ですか? Chromeデバッガーの基本的な使い方VS Code によ...
display:bolck/none によるメニューバーの完成の効果 図 1:まず、完成したエフェク...
【質問】 INSERT 文は最も一般的な SQL 文の 1 つです。最近、MySQL サーバーが同時...
NginxのGeoモジュールの紹介geo ディレクティブは、ngx_http_geo_module ...
目次序文文章1. JavaScriptコードの実行プロセスに関連する概念2. 実行コンテキストと実行...
古いバージョンをアンインストールする以前に古いバージョンをインストールしたことがある場合は、まずそれ...
まずはコードを見てみましょう: ALTER TABLE reportblockdetail ADD ...
エラー: Connection to blog0@localhost failed. [08001]...
Windows Server 2008R2を忘れた場合の対処方法サーバーの数が多すぎる、サーバーが多...
概要Docker 自体の現在のデフォルト ネットワークについては、単一ホスト上の異なる Docker...
Vue foreach配列を記述し、jsで配列をトラバースする方法シナリオVueでAxiosを使用し...
目次1. 問題の説明2. 原因分析3. 解決策4. 処理1. 問題の説明調整センターでは、最後の 2...
この記事では、例を使用して、MySQL の結合クエリ、結合クエリ、サブクエリの原理と使用方法を説明し...
シームレス カルーセルは非常に一般的なエフェクトであり、ロジックを理解すれば非常に簡単です。効果は以...