• 締切済み

クリッカブルマップ上のポップアップ画像

初心者です。よろしくお願いします。 クリッカブルマップ上にあるリンク先にポインタを合わせると、ポップアップ画像が表示される仕組みを作りたいと思います。 いろいろなサイトで調べるうちに、テキストにポインタを合わせた時にポップアップ画像が表示されるコードを見つけたので、そのコードを自分なりに作り変えて試してみたのですが、うまく表示されません。 現在のhtmlコード、およびcssのコードは下記のとおりです。 <ul> <img src="img/top_map.jpg" alt="テスト画像" width="880" height="720" border="0" usemap="#Map" /> <map name="Map"><span class="test"><area shape="rect" coords="363,70,379,86" href="リンク先URL" target="_blank" /> </span> </map> </ul> ul area { position: relative; } ul area span { display: block; visibility: hidden; width: 150px; height: 150px; position: absolute; top: -100px; left: 50px; } ul area:hover { background: #FFFFFF; } ul area:hover span { visibility: visible; text-indent: -10000px; } span.yahoo { background: url(ポップアップ画像URL); } 他のサイトで、areaにはhoverという記述ができないという書き込みもありましたが、何とか実現できないものかと思っています。 どなたか、教えていただけないでしょうか?

  • HTML
  • 回答数1
  • ありがとう数1

みんなの回答

回答No.1

上記のソースでは無理ですね。 仮に<areal>に:hoverが出来たとしても <areal>を囲んだ<span>自体をvisibility: hidden;としていては :hover出来ません。 なぜ<ul>が使われているのかも分かりません。 お望みの動作を実現することは可能ですが、 あまりにもでたらめなソースなので、修正しようがありません。 CSS、HTMLの基本を勉強されてから新たに作成したほうが早いかと思います。

noragoro
質問者

お礼

お手を煩わせてしまって申し訳ありません。。。 なにぶん、初心者なのでご容赦ください(^^;)

関連するQ&A

  • IEでのポップアップ画像の位置「fixed」

    オンマウスでポップアップする画像を、左上に固定したいのですが、 HTMLとCSSだけでは難しいのでしょうか? HTMLとCSS以外の知識はほとんどありませんので、なんとかこの2つでとも思っているのですが… firefox・googleChromeでは下記のCSSで左上でポップアップ画像が固定されています。 IE8で確認したところ、どうしても画像の下に出てしまいます。 .thumbnail{ z-index: 0; font-size:12px; } .thumbnail:hover{ background-color: transparent; z-index: 50; } .thumbnail span{ position: absolute; background-color: #FFFFFF; padding: 5px; left: 10px; border: 1px dashed gray; visibility: hidden; color: black; text-decoration: none; } .thumbnail span img{ border-width: 0; padding: 2px; } .thumbnail:hover span{ visibility: visible; position: fixed; top: 10px; left: 10px; } ご教授いただければと思います。

    • ベストアンサー
    • CSS
  • CSSでポップアップしたけど変な場所でポップ?

    CSSに詳しい方!! どうかお助けください! 不動産サイトの沿線の地図から駅名の上でボタンでポップアップするようにコーディングしました。 ・・・が本来駅名の上だけでポップアップするはずなので変な場所でもポップアップしてしまいます・・・! 地図の右上らへん・・・ (駅名の上にテキストで駅名が出てるのはバグではなく故意です。) 誰かアドバイスいただけないでしょうか・・?! どうぞよろしくお願いします。 ちなみにスタイルシートは以下のコードです。 ■■css■■■■■■■■■■■■■■■■■■■■■■■■■■■ /* navi-start 共通 ----------------------------------- */ #navi00 { width:570px; height:400px; background:url(../img/rosen04.jpg); position:relative; } /* いったんコメントアウト --------------------- #navi00 strong { text-indent:-9999px; visibility:hidden; font-size:0.1em; line-height:0; } /*----ナビ・ボタンごとの設定----*/ /* 01 本町-------------------------------------------------*/ #navi00 ul li.n_01 span { position:absolute; top:190px; left:204px; display:block; height:31px; width:101px; } #navi00 ul li.n_01_on span { position:absolute; top:190px; left:204px; display:block; height:31px; width:101px; } #navi00 li.n_01_on ul.sub { position:absolute; width:120px; top:165px; left:140px; z-index:10; background:none; } #navi00 li.n_01 ul.sub { display:none; } ///* 座標違いで02~06まで続きます。 /*----プルダウンの設定----*/ #navi00 ul li ul.sub li a { background:url(../img/bu_pop.jpg) no-repeat; filter:alpha(opacity=90); height:30px; padding:10px 0 0 10px; width:110px; display:block; z-index:10; color:#333; text-align:left; text-indent:1em; font-size:14px; font-weight:bold; font-family:"ヒラギノ角ゴ Pro W3" , "MS Pゴシック", Osaka; } head + body #navi00 ul li ul.sub li a { height:30px; } #navi00 ul li ul.sub li a:hover { background:url(../img/bu_pop_r.jpg) no-repeat; }

    • ベストアンサー
    • HTML
  • 非リンク画像にポップアップ、ブラウザでの違い

    質問、失礼いたします。 htmlとCSSで、画像のポップアップを作っています。 ソースは下記の通りです ■HTML部分 <a class="thumbnail" href="xxx"> <img src="xxx" border="0" /> <span><img src="ooo" /></span> </a> ■CSS部分 .thumbnail{ position: relative; z-index: 0; } .thumbnail:hover{ background-color: transparent; z-index: 50; } .thumbnail span{ position: absolute; background-color: lightyellow; padding: 5px; left: -1000px; border: 1px dashed gray; visibility: hidden; color: black; text-decoration: none; } .thumbnail span img{ border-width: 0; padding: 2px; } .thumbnail:hover span{ visibility: visible; top: 0; left: 60px; } ■サンプル掲載サイト http://akifumih.seesaa.net/article/111153756.html このコードを使い、HTML部分のリンクを外し <span class="thumbnail"> <img src="xxx" /> <span><img src="ooo" /> </span> </span> として、Chromeで確認したら問題なかったのですが、 IEの場合、ポップアップをしなくなっていました。 この2つのブラウザで見た場合、どうして異なるのかが不明で ご存じの方がいらっしゃいましたら、ご教授お願い致します。

    • ベストアンサー
    • CSS
  • CSS内に指定されている画像にクリッカブルマップを

    こんばんは、CSSとクリッカブルマップがよく分かりません。 やりたいのは、CSSのbackgroundで指定されている画像にクリッカブルマップの様な効果を与えたいのです。 CSSは以下の様な物です。 .header { width : 980px !important ; height : 250px ; margin: 0 auto ; background-image: url("http://○○.png") ; } CSSの指定の画像に複数のリンクを与えたいのですが、可能でしょうか? 具体的にコードを書いていただける方からのみお返事をお願いいたします。

    • 締切済み
    • CSS
  • どなたか!IEでのみ表示が異なります。

    いつもお世話になります。 前回質問させていただきhttp://oshiete1.goo.ne.jp/qa4513912.html よい回答いただき、少し前進したのですが、ここでまた問題が! 自己解決はとても難しくお手上げ状態なのです! どなたかお知恵を貸してください。 1枚画像でmap、reserve、manu、aboutという横並びリンクバーを作成し、 (1)デフォルト(2)カーソルを合わせた時(3)現在のページはココですよ~ の状態(4×3)を1枚の画像で作り、htmlに、ページの現在位置を表すためのバーのスタイルをclass指定し(3)、 ulをposition指定にし、liをfloat:left;で作ったところ、 operaとfirefoxでは意図通りに表示されるのですが IE(6.0)でのみ(3)の部分が、一番左(about)の画像で表示されるのです。 (1)(2)は大丈夫です。 (というか、operaとfirefoxは(3)の表示の場合は a:hoverは表示されないですね・・) 長くなってすいませんが、navbarのところのみですが記載しますので どなたかご確認くださいませんか? よろしくお願いいたします。 ■html <ul id="navbar"> <li><a href="map.html" class="map selected"><span>地図</span></a></li> <li><a href="#" class="res"><span>ご予約・貸切</span></a></li> <li><a href="#" class="manu"><span>メニュー&料金</span></a></li> <li><a href="#" class="about"><span>樹海について</span></a></li> </ul></div> ------------------------------------------------------------ ■css ul#navbar { position: absolute; top: 100px; left: 300px; width: 476px; height:50px; } ul#navbar li{ float:left; width:119px; height:50px; } ul#navbar a{ display:block; width:119px; height:50px; background-image:url(bar_all.gif); background-repeat: no-repeat; } ul#navbar li a span{ display: none; / } /* 初期状態 -------------------------------------------*/ a.map{ background-position: 0px 0px; } a.res{ background-position: -119px 0px; } a.manu{ background-position: -238px 0px; } a.about{ background-position: -357px 0px; } /* オンマウス ------------------------------------------ */ a:hover.map{ background-position: 0px -50PX; } a:hover.res{ background-position: -119px -50px ; } a:hover.manu{ background-position: -238px -50px; } a:hover.about{ background-position: -357px -50px; } /* selected -------------------------------------------*/ a.map.selected{ background-position: 0px -100px; } a.res.selected{ background-position: -119px -100px; } a.manu.selected{ background-position: -238px -100px; } a.about.selected{ background-position: -357px -100px; }

    • 締切済み
    • CSS
  • IEの時に空白ができてしまします。

    CSSを使ってホームページ制作をしはじめたのですが、まだまだ勉強不足の為修正の仕方がわかりません。申し訳ございませんがどなたか詳しいかた教えて頂けないでしょうか。 内容はと言いますとリモートロールオーバーを設定している際にIEで#Content01 ul li#menu01~03 aの背景画像の下に空白ができてしまうのです。FireFoxでは思い通り表示できているのですが。。。 ---HTML--- <div id="Content01"> <!- コンテンツ01 -!> <ul> <li id="menu01"><a href="#"><span>あああああ</span></a></li> <li id="menu02"><a href="#"><span>いいいいい</span></a></li> <li id="menu03"><a href="#"><span>ううううう</span></a></li> </ul> </div> ---CSS--- /* コンテンツ01 */ #Content01{ position:relative; background:url(../.jpg) no-repeat right top; width:800px; height:300px; } #Content01 ul li#menu01 a{ display:block; width:200px; height:100px; background:url(../.jpg) no-repeat left top; } #Content01 ul li#menu02 a{ display:block; width:200px; height:100px; background:url(../.jpg) no-repeat left top; } #Content01 ul li#menu03 a{ display:block; width:200px; height:100px; background:url(../.jpg) no-repeat left top; } #Content01 ul li{ position:relative; margin:0px; right:40px; top:0px; } #Content01 ul li a span{ display:none; } #Content01 li{ list-style:none; } #Content01 ul li#menu01 a:hover span{ position:absolute; top:0px; right:-40px; display:block; width:600px; height:300px; text-indent:-9999px; } #Content01 ul li#menu02 a:hover span{ position:absolute; top:-100px; right:-40px; display:block; width:600px; height:300px; text-indent:-999px; } #Content01 ul li#menu03 a:hover span{ position:absolute; top:-200px; right:-40px; display:block; width:600px; height:300px; text-indent:-999px; } #Content01 ul li#menu01 a:hover span{ background:url(../.jpg) no-repeat; } #Content01 ul li#menu02 a:hover span{ background:url(../.jpg) no-repeat; } #Content01 ul li#menu03 a:hover span{ background:url(../.jpg) no-repeat; } #Content01 a:hover{ border:none; } このような記述を致しております。 色んなサイトを見ながら作りましたので不適切な箇所も多いとは思いますがどうか宜しくお願い致します。

  • 1枚画像でリンクposition指定。現在のページ表示するには?

    いつもおせわになります。 cssで横並びのリンクバーがmap、予約、menuとかあり、 (1)デフォルト(2)カーソルを合わせた時(3)現在のページはココですよ、 の状態を1枚の画像で作り、positionで各ごとの表示ができるよう、下記のように指定をしました。 htmlの方のテキストリンクは表示してません。 デフォルト時の画像と、オンマウスの表示はIE・operaともに可能なのですが 肝心の、(3)のクリックした時(それ以降もずっとそのままで希望)。 がきちんと表示されません。 厳密には・・ IE→一瞬中途半端に表示されるが、次のクリックをすると消える。 opera、firefox→クリックした瞬間のみ一瞬表示。 疑似クラスが "link", "visited", "hover", "active" などあると思いますが (記載方法に順番があることは知っています) もしかしてもしかして・・・・・・・ クリックした現在のページの表示指定は、"active" ではないのでしょうか。 "active"はクリックした瞬間?だけ?それ以降もずっとそのままでいてよ~~ と思うのですがそんな設定はないのでしょうか。 "visited"だと、全部のリンクに訪問すると、全部変化してしまうわけですよね? いまちょっとやってみましたが、思ったものではないですし・・ 自分なりに調べて、楽チンな気もして、 cssで1枚画像でリンク、というのををやってみたかたったのですが むしろ逆に面倒なことになってしまいました・・・・ これでだめだったら、普通にオンマウスオーバーとかで行うので なぜ表示できないのか、解決方法があるのか知りたいです・・・ 長くなって恐縮です。navbar部分のみですが下記に記述しますので もしよかったら、ご覧いただけますか? どなたか、改善方法、アドバイスなどありましたらご教授ください!! ---------------------------------------------------------------------------------------------- ◆html◆ ---------------------------------------------------------------------------------------------- <ul id="navbar"> <li><a href="#"class="map"><span>地図</span></a></li> <li><a href="#" class="res"><span>ご予約・貸切</span></a></li> <li><a href="#" class="manu"><span>メニュー&料金</span></a></li> <li><a href="#" class="about"><span>○○について</span></a></li> </ul></div> ---------------------------------------------------------------------------------------------- ◆CSS◆ ---------------------------------------------------------------------------------------------- ul#navbar { position:absolute; /* ▼ここでコンテナの枠起点左からを起点に指定 ▼ */ top: 100px; left: 300px; padding: 0px;    width: 476px;    height:50px; } ul#navbar li{     float:left;     width:119px; } ul#navbar a{ display:block; width:119px; height:50px; background-image:url(bar_all.gif); background-repeat: no-repeat; } ul#navbar li a span{      display: none; } /* デフォルト -------------------------------------------*/ a.map{ background-position: 0px 0px;/ } a.res{ background-position: -119px 0px; } a.manu{ background-position: -238px 0px; } a.about{ background-position: -357px 0px; } /* オンマウス ------------------------------------------ */ a:hover.map{ background-position: 0px -50PX; } a:hover.res{ background-position: -119px -50px ; } a:hover.manu{ background-position: -238px -50px; } a:hover.about{ background-position: -357px -50px; } /* アクティブ -------------------------------------------*/ a:active.map{ background-position: 0px -100px; } a:active.res{ background-position: -119px -100px; } a:active.manu{ background-position: -238px -100px; } a:active.about{ background-position: -357px -100px; }

    • ベストアンサー
    • CSS
  • ドロップダウンメニューについて

    apycomでhttp://apycom.com/menus/1-yellow-green.htmlの ドロップダウンメニューをダウンロードして設定しているのですが、サブメニューのリンク文字の変更方法が分からなくて困っています。 サブメニューの背景を変更したのでリンクの文字をもっとハッキリ見える色に変更したいです。 マウスが乗った時の文字の色も変更できません。 昨日から色々やってるのですがどうしても解決できないのでお聞きしました。 よろしくお願いします。 /** ********************************************* * Prototype of styles for horizontal CSS-menu * @data 30.06.2009 ********************************************* * (X)HTML-scheme: * <div id="menu"> * <ul class="menu"> * <li><a href="#" class="parent"><span>level 1</span></a> * <ul> * <li><a href="#" class="parent"><span>level 2</span></a> * <ul><li><a href="#"><span>level 3</span></a></li></ul> * </li> * </ul> * </li> * <li class="last"><a href="#"><span>level 1</span></a></li> * </ul> * </div> ********************************************* */ /* menu::base */ div#menu { height:41px; background : transparent url(main-bg.png) repeat-x scroll 0% 0%; } div#menu ul { margin: 0; padding: 0; list-style: none; float: left; } div#menu ul.menu { padding-left: 30px; } div#menu li { position: relative; z-index: 9; margin: 0; padding: 0 5px 0 0; display: block; float: left; } div#menu li:hover >ul { left: -2px; } div#menu a { position: relative; z-index: 10; height: 41px; display: block; float: left; line-height: 41px; text-decoration: none; font: normal 12px Trebuchet MS; } div#menu a:hover, div#menu a:hover span { color: #fff; } div#menu li.current a {} div#menu span { display: block; cursor: pointer; background-repeat: no-repeat; background-position: 95% 0; } div#menu ul ul a.parent span { background-position:95% 8px; background-image : url(item-pointer.gif); } div#menu ul ul a:hover.parent span { background-image : url(item-pointer-mover.gif); } /* menu::level1 */ div#menu a { padding: 0 10px 0 10px; line-height: 30px; color : rgb(56, 56, 56); } div#menu span { margin-top: 5px; }/**@replace#1*/ div#menu li { background : transparent url(main-delimiter.png) no-repeat scroll 98% 4px; } div#menu li.last { background: none; } /* menu::level2 */ div#menu ul ul li { background: none; } div#menu ul ul { position: absolute; top: 38px; left: -999em; width: 163px; padding: 5px 0 0 0; background : rgb(179, 221, 81) none repeat scroll 0% 0%; margin-top:1px; } div#menu ul ul a { padding: 0 0 0 15px; height: auto; float: none; display: block; line-height: 24px; color : rgb(56, 56, 56); } div#menu ul ul span { margin-top: 0; padding-right: 15px; _padding-right: 20px; color : rgb(56, 56, 56); } div#menu ul ul a:hover span { color: #fff; } div#menu ul ul li.last { background: none; } div#menu ul ul li { width: 100%; } /* menu::level3 */ div#menu ul ul ul { padding: 0; margin: -38px 0 0 163px !important; margin-left:172px; color: #FFFFFF; } /* colors */ div#menu ul ul ul { background: rgb(41,41,41); } div#menu ul ul ul ul { background: rgb(38,38,38); } div#menu ul ul ul ul { background: rgb(35,35,35); } /* lava lamp */ div#menu li.back { background : transparent url(lava.png) no-repeat scroll right -44px !important; background-image : url(lava.gif); width: 13px; height: 44px; z-index: 8; position: absolute; margin: -1px 0 0 -5px; } div#menu li.back .left { background : transparent url(lava.png) no-repeat scroll left top !important; background-image : url(lava.gif); height: 44px; margin-right: 8px; } 【html】 <div id="menu"> <ul class="menu"> <li><a href="#"><span>Home</span></a> <li><a href="#" class="parent"><span>商品紹介</span></a> <ul> <li><a href="#"><span>コンクリート</span></a> <li><a href="#"><span>木材</span></a> <li><a href="#"><span>アクセサリー</span></a> <li><a href="#"><span>砂</span></a> <li><a href="#"><span>フード</span></a>

  • 1つの画像を使ったナビゲーションからプルダウン

    <div id="menu"> <ul> <li id="menu01"><a href="#">profile</a></li> <li id="menu02"><a href="#">works</a></li> <li id="menu03"><a href="#" target="_blank">memo</a> <li id="menu04"><a href="#">link</a></li> </ul> </div> ------- #menu{ width:824px; height:100px; padding:0px; margin: 0px auto 20px;} #menu ul{ list-style:none; width:824px; height:100px;} #menu ul li a{ text-indent:9999px; background:url(img/menu.jpg) no-repeat; display:block; width:206px; height:100px;} #menu ul li { float:left; width:206px; height:100px;} #menu ul li#menu01 a { background-position: 0px 0px; } #menu ul li#menu02 a { background-position: -206px 0px; } #menu ul li#menu03 a { background-position: -412px 0px; } #menu ul li#menu04 a { background-position: -618px 0px; } #menu ul li#menu01 a:hover { background-position: 0px -100px; } #menu ul li#menu02 a:hover { background-position: -206px -100px; } #menu ul li#menu03 a:hover { background-position: -412px -100px; } #menu ul li#menu04 a:hover { background-position: -618px -100px; } ※数字のキリが悪いですが、お気になさらず。 上記のような1つの画像をスライドするナビメニューを作ったのですが、 これをベースに、一箇所メニューからドロップダウンさせる事は可能でしょうか。 また、そのドロップダウンされたメニューはテキストではなく画像が良いです。 バックグラウンドの画像の上にメニューの1つの画像を重ね配置してからドロップダウンさせるなど。。 ほぼ初心者に近い為勝手に思いついたのはこれくらいで、よく分かりません。 ネットで色々と検索をしたのですが、思ったようなものがなく、 何か参考になるようなURL等あれば教えていただけますでしょうか。 できれば分かり易いものがありがたいです。。 また、上記のやり方では根本的に無理だという場合も教えて欲しいです。 よろしくお願いします。

    • 締切済み
    • CSS
  • CSSでの画像メニューの設定について

    現在CSSの勉強中です。 外部CSSで画像を使用してリンクメニューを作ったのですが、 やり方があっているか確認をお願いしたいのですが。 off時の画像(白)、ページのin時の画像(赤)、hover(青)の画像を用意しています。 CSS部分▼ .navi01 a{ width:102px; height:43px; background-image:url(common/img/navi_top_off.gif); background-repeat:no-repeat; } .navi01_on a{ width:102px; height:43px; background-image:url(common/img/navi_top_on.gif); background-repeat:no-repeat; } .navi01 a:hover{ width:102px; height:43px; background-image:url(common/img/navi_top_hover.gif); background-repeat:no-repeat; } .navi01_on a:hover{ width:102px; height:43px; background-image:url(common/img/navi_top_hover.gif); background-repeat:no-repeat; } HTML部分▼ <li class="navi01_on"><a href="index.html" title="トップページ"><span class="none">トップページ</span></a></li> <li class="navi02"><a href="work.html" title="仕事内容"><span class="none">仕事内容</span></a></li> CSSの講座のページなどを見ると、設定がもうすこし少なくても うまく動いていたりして、無駄な部分があるのではと思っています。 今の私の知識ではどこが悪いのか分からないので、 教えて頂けると幸いです。 (もし良い講座のページ、本がありましたら教えて頂ければと思います。) 宜しくお願い致します。

    • ベストアンサー
    • CSS

専門家に質問してみよう