質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

1回答

405閲覧

jQuery ドロップダウンメニューでドロップダウン部分のレイアウトを変えたい

退会済みユーザー

退会済みユーザー

総合スコア0

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2017/08/07 02:23

###前提・実現したいこと
①jQuery ドロップダウンメニューでドロップダウン部分のレイアウトを変えたいです。
メニュー1のドロップダウンメニューがメニュー2の領域に入ってしまってもいいので、わかりやすく表示したいです。

<li></li>でくくっていることが原因だと思いますが、ドロップダウンメニューの項目に表示される「・」を無くしたいです。

###発生している問題・エラーメッセージ
以下のイメージのように段落ドロップダウン部の段落が見にくい状態になっています。
現状

メニュー1
teratail メニュー1−2 メニュー1-3
teratail メニュー1-2 メニュー1-3

のように表示させたいです

###該当のソースコード

HTML

1<html> 2<head> 3 4<style> 5#menu div { 6 position: relative; 7 float: left; 8} 9 10span { 11 cursor: pointer; 12} 13 14ul { 15 display: none; 16 position: absolute; 17} 18</style> 19 20<body> 21<div id="menu"> 22<div> 23<span>メニュー 1</span> 24<ul> 25<li><a href="#">teratail</a>&nbsp<a href="#">メニュー 1-2</a>&nbsp<a href="#">メニュー 1-3</a></li> 26<li><a href="#">teratail</a>&nbsp<a href="#">メニュー 1-2</a>&nbsp<a href="#">メニュー 1-3</a></li> 27 28</ul> 29</div> 30<div> 31<span>メニュー 2</span> 32<ul> 33<li><a href="#">メニュー 2-1</a></li> 34<li><a href="#">メニュー 2-2</a></li> 35<li><a href="#">メニュー 2-3</a></li> 36</ul> 37</div> 38<div> 39<span>メニュー 3</span> 40<ul> 41<li><a href="#">メニュー 3-1</a></li> 42<li><a href="#">メニュー 3-2</a></li> 43<li><a href="#">メニュー 3-3</a></li> 44</ul> 45</div> 46</div> 47 48<script src="http://code.jquery.com/jquery-1.12.4.min.js"></script> 49<script> 50$(function () { 51 $('span').click(function() { 52 if ($(this).attr('class') == 'selected') { 53 // メニュー非表示 54 $(this).removeClass('selected').next('ul').slideUp('fast'); 55 } else { 56 // 表示しているメニューを閉じる 57 $('span').removeClass('selected'); 58 $('ul').hide(); 59 60 // メニュー表示 61 $(this).addClass('selected').next('ul').slideDown('fast'); 62 } 63 }); 64 65 // マウスカーソルがメニュー上/メニュー外 66 $('span,ul').hover(function(){ 67 over_flg = true; 68 }, function(){ 69 over_flg = false; 70 }); 71 72 // メニュー領域外をクリックしたらメニューを閉じる 73 $('body').click(function() { 74 if (over_flg == false) { 75 $('span').removeClass('selected'); 76 $('ul').slideUp('fast'); 77 } 78 }); 79}); 80</script> 81 82</body> 83 84</head> 85</html> 86

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

メニュー1
teratail メニュー1−2 メニュー1-3
teratail メニュー1-2 メニュー1-3

のように表示させたいです

これだけを実現するならulに横幅をつける事でかいけつします。

css

1ul { 2 display: none; 3 position: absolute; 4 width: 500px;//追加 5}

ただ、これだと「メニュー2」や「メニュー3」の表示があまりキレイとはいえないので

css

1#menu{ 2 position: relative;//追加 3} 4 5#menu div { 6 // position: relative;削除 7 float: left; 8 9} 10 11span { 12 cursor: pointer; 13} 14 15ul { 16 display: none; 17 position: absolute; 18 left: 0px;//追加 19 width: 100%;//追加 20}

とすればメニューっぽくなるのではないでしょうか。


<li></li>でくくっていることが原因だと思いますが、ドロップダウンメニューの項目に表示される「・」を無くしたいです。

これは

css

1li{ 2 list-style: none; 3}

で解決します。

投稿2017/08/07 03:42

LanHma

総合スコア192

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問