Jqueryを使って画像サムネイルにロールオーバーしたときに、半透明の画像と情報を載せたい

このQ&Aのポイント
  • Jqueryを使用して画像サムネイルにマウスを合わせた際に、半透明の画像と情報を表示する方法について教えてください。
  • WPを使用しているため、サムネイルは自動で生成されます。すでに半透明のpng画像を背景にした情報セットを載せることはできていますが、全ての画像が反転してしまう問題が発生しています。
  • マウスを合わせた画像のみにロールオーバーを適用する方法を教えてください。
回答を見る
  • ベストアンサー

Jqueryを使って画像サムネイルにロールオーバーしたときに、半透明の

Jqueryを使って画像サムネイルにロールオーバーしたときに、半透明の画像と情報を載せたいと思っております。 WPを利用しているのでサムネイル一覧は自動で生成されます。 サムネイルを生成している上に半透明のpng画像を背景にした情報セットをPositionで載せるところまでは完成しています。 jqueryで上に載る情報をまとめたCSSにdisplayを追加させることでロールオーバーもできました。 ですが、自動生成している一覧のclass名が全て同じなため、サムネイルの一つにマウスを合わせると全ての画像が反転してしまいます。 どうしたら、マウスを合わせた画像のみロールオーバーできるようになりますか? よろしくお願いいたします。 【JSソース】 $(function(){ $("li.item dl dt.thm").mouseover(function(){ $("li.item dl dt.thm a.overImg").css("display","block");}); $("li.item dl dt.thm").mouseout( function() { $("li.item dl dt.thm a.overImg").css("display","none");}); }); 【HTML】 <ul class="lists"> <li class="item"> <dl> <dt class="thm"> <a href=""><img src="~~ /></a> <a href="" class="overImg"> <span class="name01">タイトル</span> <span>サイズ</span> <span class="date">日付</span> </a> </dt> <dd>>情報1</dd> <dd>情報2</dd> </dl> ~~~ </ul> 【CSS】 .lists .item .thm{ position: relative; height: 100px; width: 150px; margin: 0 0 10px 0; border: 1px solid #ebebeb; -moz-box-shadow: 2px 2px 5px #cccccc; -webkit-box-shadow: 2px 2px 5px #cccccc; } .lists .item .thm a.overImg{ position: absolute; background: url(../images/thumbnail_over.png) no-repeat right bottom; height: 80px; width: 130px; left: 0px; top: 0px; padding: 10px; display: block; text-decoration: none; display: none; } .lists .item .thm a.overImg span{ font-size: 11px; display: block; width: 130px; margin-bottom: 5px; color: #666666; text-shadow: #ffffff 1px 1px 3px; height: 15px; overflow: hidden; } .lists .item .thm a.overImg span.name02{ font-weight: bold; font-size: 14px; } .lists .item .thm a.overImg span.date{ position: absolute; leftt: 0; bottom: 0; }

noname#146582
noname#146582

質問者が選んだベストアンサー

  • ベストアンサー
  • mtaka2
  • ベストアンサー率73% (867/1179)
回答No.1

イベント処理関数の中では、処理対象のエレメントがthisに入っていますから、その配下にあるエレメントだけを処理対象にすればいいかと思います。 試してませんが、たぶん --- $("li.item dl dt.thm").mouseover(function(){ $("a.overImg", this).css("display","block");}); $("li.item dl dt.thm").mouseout( function() { $("a.overImg", this).css("display","none");}); --- こんな感じでいけるはず。 $("a.overImg", this).css で、 thisには $("li.item dl dt.htm")で見つけた要素のうち、mouseover/mouseout で処理対象となっているエレメントが入っているので、 その下の "a.overImg" だけがcss を書き換える処理対象になります。

noname#146582
質問者

お礼

mtaka2様 ありがとうございます!! 完璧です! その後、class+"thm"に個別の番号を振って、classにしてやればいいのかなと .eachをつかって番号を振り、thmを一度削除、thm+iで新しいclassを付与してみた。 たしかに新しいclassはできたのですが、class="thm1 thm2・・・"と一覧の数だけついてしまってガックリとしていたところでした。(苦笑) 迅速な回答ありがとうございました!

関連するQ&A

  • JQueryで$("dt span")クリック動作

    JQueryで$("dt span")をクリックしたときに 隣接するddタグの部分を表示させるには以下の記述を どのように修正すればよいのでしょうか? <html> <head> <style type="text/css"> dl { margin-bottom: 20px; } dd { display: none; } </style> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script> <script type="text/javascript"> $(function(){ $("dt span").click(function(){ $("+dd",this).slideToggle(); }); }); </script> </head> <body> <dl> <dt>toggle<span>開く</span></dt> <dd>テキストが入ります。</dd> </dl> <dl> <dt>toggle<span>開く</span></dt> <dd>テキストが入ります。</dd> </dl> </body> </html> ご存じの方がおられましたらご回答をよろしくお願いします。

  • cssを使ったロールオーバについて どちらの記述が良いでしょうか?

    cssを使ったロールオーバについて どちらの記述が良いでしょうか? cssでのロールオーバを使いたく、以下のようなタグに辿りつきました。 ---------------------------------------------------------------------- ul.menu { margin:0px 0px 25px 0px; padding:0px; clear:both; float:left; width:200px;} ul.menu li {float:left; width:100px; display:inline; text-indent:-9999px; overflow:hidden; ist-style:none;} ul.menu li a {display:block; width:100px; height:50px;} li.menu1 a {background:url(image/menu.gif) 0 0 no-repeat;} li.menu1 a:hover {background:url(image/menu.gif) 0 -50px no-repeat;} li.menu2 a {background:url(image/menu.gif) -100px 0 no-repeat;} li.menu2 a:hover {background:url(image/menu.gif) -100px -50px no-repeat;} <ul class="menu"> <li class="menu1"><a href="a.html" title="a">a</a></li> <li class="menu2"><a href="b.html" title="b">b</a></li> </ul> ---------------------------------------------------------------------- 表示はそれで上手く行ったのですが、overflow:hidden;を使うとIE7でスクロールバーが出ないんじゃないか?と言われ、下記のように書き直しました。 ---------------------------------------------------------------------- #menu { width:200px; height:50px; margin : 0px 0px 25px 0px ; } #menu h2 {width:100px; height:50px; margin:0; float:left;} #menu h2 a {display:block; width:100px; height:50px; background-image:url(image/menu.gif) ;} a.menu1 { background-position: 0 0 ;} a:hover.menu1 { background-position: 0 -50px ;} a.menu2 { background-position: -100px 0 ;} a:hover.menu2 { background-position: -100px -50px;} <div id="navi"> <h2><a href="a.html" class="menu1" title="a"></a></h2> <h2><a href="b.html" class="menu2" title="b"></a></h2> </div> -------------------------------------------------------- こちらでも表示は出来たのですが、後からIE7で確認した所初めのタグでもスクロールバーは表示出来ました。 とはいえやはり不安ですし後者で行こうかと思ったのですが、後者の場合も<a></a>の間に何もないことが気にかかり決めかねています。詳しい方がいらっしゃいましたら、どっちの方がいいかのアドバイス等頂けないでしょうか。よろしくお願いします。

    • ベストアンサー
    • HTML
  • jQueryでアコーディオンメニュー

    jQueryのaccordionでメニューを作っています。 初期のページは大項目1~3がアコーディオンで開閉し、 開いた中にある小項目がリンクボタンになっています。 【HTML 1】 小項目1(index_01.html)では、大項目1が開いたままになり、 大項目2、3のみアコーディオンで開閉します。【HTML 2】 ここからがご教示頂きたいところで、 小項目2(index_02.html)を表示している時は 大項目2が開いたままで、大項目1、3をアコーディオンさせたいと考えております。 【HTML 3】 アコーディオンではさむ形になるので、新しいid「slider2」を作りましたが、 お互いが開いたままの状態になってしまうのが難点です。 解決案として、「slider」で大枠を囲み、アコーディオンに左右されないddを作るか、 「slider」と「slider2」を同期させてどちらか片方が開いている時は片方が閉じるように する・・・と考えています。 ★印の部分のfor文に手を加えるのではないかと思うのですが、 どうにもお手上げです・・・ お手すきの方、どうかお力添え下さい よろしくお願い致します。 //______jQuery______// var accordion=function(){ var tm=sp=10; function slider(n){this.nm=n; this.arr=[]} slider.prototype.init=function(t,c,k){ var a,h,s,l,i; a=document.getElementById(t); this.sl=k?k:''; h=a.getElementsByTagName('dt'); s=a.getElementsByTagName('dd'); this.l=h.length; ★for(i=0;i<this.l;i++){var d=h[i]; this.arr[i]=d; d.onmouseover=new Function(this.nm+'.pro(this)'); if(c==i){d.className=this.sl}} l=s.length; for(i=0;i<l;i++){var d=s[i]; d.mh=d.offsetHeight; if(c!=i){d.style.height=0; d.style.display='none'}} } slider.prototype.pro=function(d){ for(var i=0;i<this.l;i++){ var h=this.arr[i], s=h.nextSibling; s=s.nodeType!=1?s.nextSibling:s; clearInterval(s.tm); if(h==d&&s.style.display=='none'){s.style.display=''; su(s,1); h.className=this.sl} else if(s.style.display==''){su(s,-1); h.className=''} } } function su(c,f){c.tm=setInterval(function(){sl(c,f)},tm)} function sl(c,f){ var h=c.offsetHeight, m=c.mh, d=f==1?m-h:h; c.style.height=h+(Math.ceil(d/sp)*f)+'px'; c.style.opacity=h/m; c.style.filter='alpha(opacity='+h*100/m+')'; if(f==1&&h>=m){clearInterval(c.tm)}else if(f!=1&&h==1){c.style.display='none'; clearInterval(c.tm)} } return{slider:slider} }(); //______HTML 1______// <div id="accordion"> <dl class="accordion" id="slider"> <dt>▼大項目1</dt> <dd> <span class="bank_top"><a href="index_01.html">小項目1</a></span> </dd> <dt>▼大項目2</dt> <dd> <span><a href="index_02.html">小項目2</a></span> </dd> <dt>▼大項目3</dt> <dd> <span><a href="index_03.html">小項目3</a></span> </dd> </dl> </div> //______HTML 2______// <div id="accordion"> <dl class="accordion"> <dt>▼大項目1</dt> <dd> <span class="bank_top"><a href="index_01.html">小項目1</a></span> </dd> <dl class="accordion" id="slider"> <dt>▼大項目2</dt> <dd> <span><a href="index_02.html">小項目2</a></span> </dd> <dt>▼大項目3</dt> <dd> <span><a href="index_03.html">小項目3</a></span> </dd> </dl> </div> //______HTML 3______// <div id="accordion"> <dl class="accordion" id="slider"> <dt>▼大項目1</dt> <dd> <span class="bank_top"><a href="index_01.html">小項目1</a></span> </dd> </dl> <dl class="accordion"> <dt>▼大項目2</dt> <dd> <span><a href="index_02.html">小項目2</a></span> </dd> <dl class="accordion" id="slider2"> <dt>▼大項目3</dt> <dd> <span><a href="index_03.html">小項目3</a></span> </dd> </dl> </div> <script type="text/javascript"> var slider1=new accordion.slider("slider1"); slider1.init("slider"); var slider2=new accordion.slider("slider2"); slider2.init("slider2"); </script>

  • jQueryにてアコーディオン機能実装について

    皆様、いつもお世話になります。 現在jQueryを使ったアコーディオン機能の実装を勉強しています。 下記、サイトを参考に実装してみたのですが、要望どおりの挙動にならず困っています。 【参考サイト】 http://web-pc.net/jquery010 【質問内容】 ページロード時に、全てのリストが開いてしまっている。 要望する挙動は以下ページのとおり、ページロード時は全てのリストが閉まっている状態にしたい。 http://sample.web-pc.net/accordion/# ソースは以下のとおりです。 【javascript】 <!-- jQuery --> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> <script> $(function(){ $(".schedule_list dt").click(function(){ $(this).next("dd").slideToggle(); $(this).children("div").toggleClass("open"); }); }); </script> 【HTML】 <div> <dl class="schedule_list"> <dt> <div> <span> <span>★</span> <span>▲▲</span> <span>画像</span> </span> </div> </dt> <dd> <div> <table> <tr> <td> <img src="▲"> </td>    <td> <div> <a href=""><img src="▲" /></a> </div>          </td> </tr> </table> </div> </dd> </dl> </div> 【CSS】 dl.schedule_list { display:block; } dl.schedule_list dt div { width:546px; height:61px; display:block; background-image:url(★);} dl.schedule_list dt div.open { width:546px; height:61px; display:block; background-image:url(★);} 以上です。 どなたかお詳しい方ご教授のほどよろしくお願いいたします。 開発環境: MacOSX yosemite Dreamweaver CC Safari8.0

  • ロールオーバーで画像がずれない方法

    初めてWebサイトを作成しており、今はグローバルナビゲーションを作成していますが、ロールオーバーしたときに、位置が微妙にずれてしまいます。 ちなみに画像の作成は、フォトショップCS6で次のように作成しました。 (1)カンバスサイズを、幅800px、縦60pxで作成 (2)長方形ツールを使い、境界線ありの画像を5つ作成し、手動で横に整列させる。 ※一つ当たりのサイズは幅160px、縦30pxなので、全体の幅は800、縦30です。 (3)ロールオーバー用の画像のために、上記5つのボタンを複製し、色を変える (4)通常表示用とロールオーバー用の画像を、手動で上下に連結させる ※これで幅800px、縦60pxになったので、カンバスサイズと同じサイズになりました。 (5)手動にて連結した画像をカンバスサイズの位置に合わせる (6)テキストツールで会社概要など5つ作成し、上5つの画像の中心に合わせる (7)上5つにある会社概要などの文字を一括コピーする。 (8)一括コピーした文字を、手動で下5つの画像の中心へ合わせる ※大変でしたが、グリッド機能を使って、調整しました。 以上のような流れで全体のグローバルナビゲーションのボタンを作成し、そして次の用にHTMLとCSSを入力したのですが、ロールオーバーした時に、ボタンも文字も微妙にすれてしまいます。 フォトショップの使い方が悪いのか、HTMLとCSSの使い方が悪いのか、どちらなのかわかりません。 いろいろな方からご教示を頂きたいです。本当にお願い致します!! <!-- /以下HTML --> <ul id="globalnavi"> <li id="menu1"><a href="#"></a></li> <li id="menu2"><a href="#"></a></li> <li id="menu3"><a href="#"></a></li> <li id="menu4"><a href="#"></a></li> <li id="menu5"><a href="#"></a></li> </ul> <!-- /以下CSS --> #globalnavi { margin: 0; padding: 0; } #globalnavi li { width: 160px; height: 30px; float:left; text-align: center; line-height: 3.5; margin:0; padding-left:0; } #globalnavi a { float:left; display: block; text-decoration: none; width: 160px; height: 30px; background-image: url(./img/menu-all.gif); background-repeat: no-repeat; margin:0; padding-left:0; } #menu1 a { background-position: 0px 0px; } #menu2 a { background-position: -160px 0px; } #menu3 a { background-position: -320px 0px; } #menu4 a { background-position: -480px 0px; } #menu5 a { background-position: -640px 0px; } #globalnavi a:hover { text-decoration: none; background-image: url(./img/menu-all.gif); background-repeat: no-repeat; margin:0; padding-left:0; } #menu1 a:hover { background-position: 0px -30px; } #menu2 a:hover { background-position: -160px -30px; } #menu3 a:hover { background-position: -320px -30px; } #menu4 a:hover{ background-position: -480px -30px; } #menu5 a:hover{ background-position: -640px -30px; }

    • ベストアンサー
    • CSS
  • jQuery Progateの課題

    ProgateのjQuery中級をやっています。FAQの質問をクリックすると答えが出てくるというものを作成しています。 解説通りにやってみて完成はしたのですが、 if文の中にある('open')というクラスはCSSの中に存在しません。 元々存在しない('open')クラスを探して削除したり、加えたりする意味がわかりかねます。 例えばdisplay:none;などで非表示にしていたものに以下のようなCSSを加えるのであればまだなんとなく意味が理解できます。 .open{ display:block; } しかし、CSS内にクラス('open')は存在しません。 まだ初心者です。分かりやすく解説していただけると助かります。 よろしくお願いいたします。 if($answer.hasClass('open')) { $answer.removeClass('open'); …… else { $answer.addClass('open'); …… jQuery --------------------------------------- // FAQのアコーディオン $('.faq-list-item').click(function() { var $answer = $(this).find('.answer'); if($answer.hasClass('open')) { $answer.removeClass('open'); // slideUpメソッドを用いて、$answerを隠してください $answer.slideUp(); // 子要素のspanタグの中身をtextメソッドを用いて書き換えてください $(this).find('span').text('+'); } else { $answer.addClass('open'); // slideDownメソッドを用いて、$answerを表示してください $answer.slideDown(); // 子要素のspanタグの中身をtextメソッドを用いて書き換えてください $(this).find('span').text('-'); } }); --------------------------------------- HTML --------------------------------------- <h2>FAQ</h2> </div> <div class="faq"> <ul id="faq-list"> <li class="faq-list-item"> <h3 class="question">Progateの公式キャラクターはなんですか?</h3> <span>+</span> <div class="answer"> <p>にんじゃわんこといいます。忍者の格好をしたわんこです。ネコではありません。</p> </div> </li> <li class="faq-list-item"> <h3 class="question">にんじゃわんこはオスですか?それともメスですか?</h3> <span>+</span> <div class="answer"> <p>にんじゃわんこはオスです。</p> </div> </li> <li class="faq-list-item"> <h3 class="question">にんじゃわんこは何歳ですか?</h3> <span>+</span> <div class="answer"> <p>にんじゃわんこは14歳です。</p> </div> </li> </ul> </div> --------------------------------------- CSS --------------------------------------- #faq-list { width: 500px; margin: 0 auto; padding: 0; list-style: none; } /*アコーディオン追加 */ .faq-list-item { margin:10px; border-bottom:1px solid #ccc; position:relative; cursor:pointer; text-align: left; } .faq-list-item h3 { font-size: 14px; } .faq-list-item span { position:absolute; top:0; right:5px; color:#ccc; font-size:13px; } .answer { font-size: 12px; display: none; padding: 5px 0px; margin-bottom: 15px; } ---------------------------------------

  • 画像の様なテーブルレイアウトにするには?

    画像の様なテーブルレイアウトにするにはどうすればいいのでしょうか IE9なら正しく表示されます。 何処を修正したかも教えて下さい **************index.html*********** <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis" /> <title>無題ドキュメント</title> <link rel="stylesheet" type="text/css" href="css/base.css" > </head> <body> <div id="page"> <div id="header"> <p>header</p> <!-- /#header--></div> <div id="contents"> <!--メインコンテンツ(商品リスト)--> <div id="main"> <ul id="products-list"> <!-- 商品情報 --> <li class="products"> <dl> <dt><a href="#"><img src="img/1.jpg" alt="" class="product-img" /></a></dt> <dd>商品名</dd> <dd>価格:&yen;200,000</dd> <dd><a href="#">商品詳細ページ</a></dd> <dd><a href="#"><img src="cart.jpg" alt="ショッピングカート" width="" height="" /></a></dd> </dl> </li> <!-- // 商品情報 --> <!-- 商品情報 --> <li class="products"> <dl> <dt><a href="#"><img src="img/1.jpg" alt="" class="product-img" /></a></dt> <dd>商品名</dd> <dd>価格:&yen;200,000</dd> <dd><a href="#">商品詳細ページ</a></dd> <dd><a href="#"><img src="cart.jpg" alt="ショッピングカート" width="" height="" /></a></dd> </dl> </li> <!-- // 商品情報 --> <!-- 商品情報 --> <li class="products"> <dl> <dt><a href="#"><img src="img/1.jpg" alt="" class="product-img" /></a></dt> <dd>商品名</dd> <dd>価格:&yen;200,000</dd> <dd><a href="#">商品詳細ページ</a></dd> <dd><a href="#"><img src="cart.jpg" alt="ショッピングカート" width="" height="" /></a></dd> </dl> </li> <!-- // 商品情報 --> <!-- 商品情報 --> <li class="products"> <dl> <dt><a href="#"><img src="img/1.jpg" alt="" class="product-img" /></a></dt> <dd>商品名</dd> <dd>価格:&yen;200,000</dd> <dd><a href="#">商品詳細ページ</a></dd> <dd><a href="#"><img src="cart.jpg" alt="ショッピングカート" width="" height="" /></a></dd> </dl> </li> <!-- // 商品情報 --> <!-- 商品情報 --> <li class="products"> <dl> <dt><a href="#"><img src="img/1.jpg" alt="" class="product-img" /></a></dt> <dd>商品名</dd> <dd>価格:&yen;200,000</dd> <dd><a href="#">商品詳細ページ</a></dd> <dd><a href="#"><img src="cart.jpg" alt="ショッピングカート" width="" height="" /></a></dd> </dl> </li> <!-- // 商品情報 --> </ul> <!-- /#main--></div> <!--メインコンテンツ(商品リスト)--> <div id="sub"> <p>sub</p> <!-- /#sub--></div> <!-- /#contents--></div> <div id="footer"> <p>footer</p> <!-- /#footer--></div> <!--/#page --></div> </body> </html> *************base.css**************** /* CSS Document */ body{ text-align:center; } #page{ width:860px; height:600px; margin:0 auto; background:#690; text-align:left; } #header{ width:860px; height:100px; background:#D1D1DE } #contents{ width:840px; height:380px; margin:10px; padding-left:0; background:#690; } #main{ float:right; width:570px; height:380px; background:#fff; } #sub{ float:left; width:260px; height:380px; background:#fff; } #footer{ width:860px; height:100px; clear:both; background:#fff; background:#D1D1DE } .products{ list-style-type:none; float:left; width:130px; margin:10px 0px 0px 10px; padding:0px; height:170px; background:#F3F59C } .product-img{ margin:0px; padding:0px; width:50px; height:50px; text-align:center; border:none; } #products-list{ margin:0px; padding:0px; }

    • 締切済み
    • CSS
  • CSSで横並びのロールオーバーの表示がおかしいです

    知人に頼まれて、ホームページを作成中なのですが、一枚の組み合わせた画像を使い、横に5つの内容を表示してbackground-positionで表示を指定して、ロールオーバーの横並びのナビを作っています。 当方はあまり知識がないなりに、様々なサイト様を参考にしたのですが、うまく表示されませんのでご助力をお願いいたします。 症状としては、画像が横並びに5つ表示はされるものの、position: 0 0; の値の画像が5つ並んで表示されます。 オンマウスも効いていません。 使用ソフトは、HeTeMULU Creator 確認ブラウザは、FireFox5 表示したい画像は、width 190px height 60pxを5つ横に繋げた950pxの画像とそれの色違いをもう一つ用意して、加工して上下に繋げた、950px 120pxの画像です。 以下ソースです。 /*---HTML*/ <?xml version="1.0" encoding="shift_jis "?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja"><head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> <meta http-equiv="Content-Style-Type" content="text/css"> <link rel="stylesheet" href="css/style.css" type="text/css" media="all"> <title>###</title> </head> <body> <div id="main"> <div id="menu"> <ul> <li class="menu1"><a href="#">sample</a></li> <li class="menu2"><a href="#">sample</a></li> <li class="menu3"><a href="#">sample</a></li> <li class="menu4"><a href="#">sample</a></li> <li class="menu5"><a href="#">sample</a></li> </ul> </div> </div> </body> </html> /*---CSS*/ #menu{ width: 950px; height: 60px; margin-top: 20px; margin-bottom: 20px; padding: 0px; } #menu ul{ margin: 0px; padding: 0px; } #menu li{ width: 190px; margin: 0px; padding: 0px; float: left; text-indent: -9999px; } #menu a{ display: block; width: 100%; height: 60px; background-image: url(../img/menu001.png); background-repeat: no-repeat; .menu1 a{ background-position: 0px 0px;} .menu2 a{ background-position: -190px 0px;} .menu3 a{ background-position: -380px 0px;} .menu4 a{ background-position: -570px 0px;} .menu5 a{ background-position: -760px 0px;} #menu a:hover{ background-image: url(../img/menu001.png); background-repeat: no-repeat; .menu1 a:hover{ background-position: 0px -60px;} .menu2 a:hover{ background-position: -190px -60px;} .menu3 a:hover{ background-position: -380px -60px;} .menu4 a:hover{ background-position: -570px -60px;} .menu5 a:hover{ background-position: -760px -60px;} ご指摘を宜しくお願いいたします。

  • どなたか!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
  • ameba ownd アメーバオウンド CSS

    アメーバオウンドにてアコーディオンを使ったサイトを作りたいのですが、どうしても反映されません。 他のサイトのテンプレをそのまま貼り付けるだけ、でも反映されず… だれか助けていただけないでしょうか? ちなみにその一例が下記になります。 【HTML】 <div class="qa-list mts"> <dl class="qa"> <dt>ここに質問が入ります</dt> <dd> <p>ここに回答が入ります</p> </dd> </dl> <dl class="qa"> <dt>ここに質問が入ります</dt> <dd> <p>ここに回答が入ります</p> </dd> </dl> <dl class="qa"> <dt>ここに質問が入ります</dt> <dd> <p>ここに回答が入ります</p> </dd> </dl> </div> 【CSS】 .qa-list dl { position: relative; margin: 30px 0 0; cursor: pointer; border: 1px solid #DDD; } .qa-list dl:first-child { margin-top: 0; } .qa-list dl::after { position: absolute; top: 27px; right: 26px; display: block; width: 7px; height: 7px; margin: auto; content: ''; transform: rotate(135deg); border-top: 2px solid #000; border-right: 2px solid #000; } .qa-list .open::after { transform: rotate(-45deg); } .qa-list dl dt { position: relative; margin: 0; padding: 20px 20px 20px 60px; font-weight: bold; background: #DDD; } .qa-list dl dt::before { font-size: 22px; line-height: 1; position: absolute; top: 20px; left: 20px; display: block; content: 'Q.'; color: #3285bf; } .qa-list dl dd::before { font-size: 22px; line-height: 1; position: absolute; left: 20px; display: block; content: 'A.'; font-weight: bold; color: #3285bf; } .qa-list dl dd { position: relative; margin: 0; padding: 20px 20px 20px 60px; } .qa-list dl dd p { margin: 30px 0 0; } .qa-list dl dd p:first-child{ margin-top: 0; } @media screen and (max-width: 767px) { .qa-list dl { margin: 10px 0 0; } .qa-list dl:after { top: 20px; right: 20px; width: 7px; height: 7px; } .qa-list dl dt { padding: 16px 16px 16px 50px; font-size: 14px; } .qa-list dl dt::before { font-size: 14px; top: 20px; left: 20px; } .qa-list dl dd::before { font-size: 14px; left: 20px; margin-top: 5px; } .qa-list dl dd { margin: 0; padding: 16px 16px 16px 50px; font-size: 14px; } .qa-list dl dd p { margin: 30px 0 0; } .qa-list dl dd p:first-child{ margin-top: 0; } } ご指摘いただけると幸いです。 よろしくお願い致します。

    • 締切済み
    • CSS

専門家に質問してみよう