<ul>タグと<li>タグで列表示

このQ&Aのポイント
  • この質問では、<ul>タグと<li>タグを使用してリストを表示させる方法についてのCSSの設定方法を教えていただきたいと思っています。
  • 以下のサイトのブランドリストのソースを見ると、リストが3列で表示されています。
  • 質問内容にはリストの表示方法に関する具体的な情報が含まれていません。
回答を見る
  • ベストアンサー

<ul>タグと<li>タグで列表示

こんにちは。 以下サイト http://www.mirabella.jp/MiraTop.do のブランドリストのソースを見ると、 <div id="list_en4" class="clearfix"><!-- #list_en --> <ul> <li class="initial">A</li> <li><a href="/ItemPrdList.do?brandId=01394&crumbType=0:brands">ACCESSORIES &amp; BEYOND</a></li> <li><a href="/ItemPrdList.do?brandId=01376&crumbType=0:brands">ADIDAS BY STELLA McCARTNEY</a></li> <li><a href="/ItemPrdList.do?brandId=01381&crumbType=0:brands">ALTEA</a></li> <li><a href="/ItemPrdList.do?brandId=01382&crumbType=0:brands">ALPO</a></li> <li><a href="/ItemPrdList.do?brandId=01661&crumbType=0:brands">AMERICAN RAG CIE</a></li> <li><a href="/ItemPrdList.do?brandId=01405&crumbType=0:brands">AMET &amp; LADOUE</a></li> <li><a href="/ItemPrdList.do?brandId=01406&crumbType=0:brands">ANGLO LEATHER</a></li> <li><a href="/ItemPrdList.do?brandId=01677&crumbType=0:brands">ANYA HINDMARCH</a> <li><a href="/ItemPrdList.do?brandId=01355&crumbType=0:brands">A.T</a></li> <li class="initial">B</li> <li><a href="/ItemPrdList.do?brandId=01508&crumbType=0:brands">BALMUIR</a></li> <li><a href="/ItemPrdList.do?brandId=01365&crumbType=0:brands">BRUNO CARLO</a></li> <li class="initial">C</li> <li><a href="/ItemPrdList.do?brandId=01513&crumbType=0:brands">CACHAREL</a></li> <li><a href="/ItemPrdList.do?brandId=01675&crumbType=0:brands">CALLEEN CORDERO</a> <li><a href="/ItemPrdList.do?brandId=01402&crumbType=0:brands">CHAN LUU</a></li> <li><a href="/ItemPrdList.do?brandId=01407&crumbType=0:brands">CITRUS</a></li> <li><a href="/ItemPrdList.do?brandId=01388&crumbType=0:brands">COLETTE MALOUF</a></li> <li class="initial">D</li> <li><a href="/ItemPrdList.do?brandId=01478&crumbType=0:brands">DEMI</a></li> <li><a href="/ItemPrdList.do?brandId=01524&crumbType=0:brands">DELICIOUS FREAKS</a></li> <li class="initial">E</li> <li><a href="/ItemPrdList.do?brandId=01369&crumbType=0:brands">ELEY KISHIMOTO</a></li> <li><a href="/ItemPrdList.do?brandId=01522&crumbType=0:brands">ERIBE</a> </ul> </div> この表示のみでリストが3列で表示されているのですが、 このように3列で表示させるCSSの設定方法をご存知でしたら 教えていただけますでしょうか?

  • mabuo
  • お礼率38% (12/31)
  • HTML
  • 回答数2
  • ありがとう数4

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

  • ベストアンサー
  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.2

CSSもソースを確認すればよいでしょう。 firefox + Firebug が便利です。 なお、示された部分は、javascriptでdisplay:none;に通常はなっていて、普通は表示されない。アルファベットをクリックすると表示される。  詳しくは、Firebugで確認してください。  基本的には、ulをブロックに変換(display:block)して、内部のliもブロックにして、それを親のコンテナブロック内でfloatさせているだけのようです。

mabuo
質問者

お礼

回答ありがとうございます! 最初、Htmlを完全で保存していたんですが、対象のcssファイルが見つからなかったので、インポートで設定しているファイルは見れないのかと思っていました。FireBugはインポートされているcssも参照することができるんですね。まずはこちらでも設定してみて、できるかどうかを 確認してみたいと思います。 ありがとうございました!!

その他の回答 (1)

noname#137826
noname#137826
回答No.1

私には4列で表示されますが・・・ 例があるのでしたら、その例を見るのが手っ取り早いでしょう。 ソースを見ると、A-E, F-L, M-R, S-Z がそれぞれ異なったul要素の子要素になっています。それぞれのul要素にはfloat: left;が指定されています。基本的には、これによって、4つのul要素が左から順に並び、リストが4列で表示されるように見えます。 しかし、これだけでは、ul要素の幅と親要素の幅の関係によっては、ul要素が横に4つ並ばず、3つが並んで残り1つは(改行されたように)下に表示されることもありえます。 実際にはそうなっていないのは、ul要素の親要素の幅(*1)が、各ul要素の幅(*2)、に対して大きく、ul要素を4つ並べることができるように設定されているからです。 *1 正確には親の親の親である<div id="brandlist">が決定している *2 子要素の<li class="initial">が決定している

mabuo
質問者

お礼

回答遅くなり申し訳ありません。 kaorine様が指摘された、Divタグとliタグのbrandlistとinitialを 設定に反映してみたところ設定することができました。 Firebugでここまで見れるとは知らなかったものですから 大変参考になりました。 こちらで解決です。 ありがとうございました!

関連するQ&A

  • <ul>タグでのリストの使い方

    こんばんわ。 すみません。リストをCSSで体裁を整え、ここまでできましたが、各リストの下に、ラインの画像を入れたいのですが、うまくいきません。。 画像を入れるやり方を教えてください~ <tr> <td> <div class="abc"> <ul> <li><a href="#">2004/--/--<br> ○○○○</a></li> <li><a href="#">2004/--/--<br> ○○○○</a></li> <li><a href="#">2004/08/10<br> ○○○○</a></li> </ul> </div> </td> </tr>

    • ベストアンサー
    • HTML
  • <ul><li></li></ul>にするメリットって?

    <ul><li></li></ul>にするメリットって? こんにちは。お世話になっています。 色んな方のソースを見ていると、 例えば 「ABOUT」「SERVICE」「COMPANY」・・・という項目を並べる際に <ul> <li id="about">ABOUT</li> <li id="service">SERVICE</li> <li id="company">COMPANY</li> </ul> という風にリスト化する方が多いと思うのですが中には <div id="contents"> <div class="about">ABOUT</div> <div class="service">SERVISE</service> (略) </div> という風にdivで括る方もいると思います。 (※私はdivで括るタイプです。) また。 <dl id="contents"> <dt class="about">ABOUT</dt> <dt class="service">SERVICE</dt> (略) </dl> という風に<dl><dt></dt></dl>括る方もいると思います。 それぞれのメリットってなんでしょうか? 特に<ul><li></li></ul>という風に括ってる方がおおいと思うので <ul><li></li></ul>にするメリットが知りたいです。

  • ul liのclass指定について

    表示が上手くいかないのでお助け下さい。 ul liのliにclass指定をして、それぞれのclassに異なる背景画像を表示させようとしているのですが、 なぜかclass指定をすると画像が消えてしまいます。 class指定をしない状態ですと普通に表示されるのですが、別々の画像を表示させたいと思っているので困っています。 どなたか教えて頂けないでしょうか? また、申し訳ありませんがとりあえず表示されれば良いだけなので htmlやcssの記述に対する細かいツッこみは勘弁して下さい。 宜しくお願いします! 【html】 <div id="side"> <ul id="sidenav"> <li class="a"><a href="test.html">test</a></li> </ul> </div> 【css】 div#side { display: inline; float: left; width: 178px; margin-top: 20px; text-align:center; background:#fff; } div#side ul#sidenav { list-style-type:none; border: none; } div#side ul#sidenav li.a { background:url(../common/side.gif) no-repeat left; background-position: 6px 11px; } div#side li { position:relative; width: 165px; height:40px; padding: 1px; margin: 5px; text-align:left; border: 1px solid #8c8c8c; }

    • ベストアンサー
    • CSS
  • cssのulタグについて質問です。

    cssの初心者ですがよろしくお願いします。 以下内容です。 #headerの中にulタグで float:left; display: inline; を使って横のメニューを作りました。 その下に幅いっぱいの画像を入れたかったので 一度 <div class="clear"></div>で区切って<div id=""></div>を使って画像を入れました。 そして、更にその下に上で使ったulタグをコピーしてclassを変更して新しい横のメニューを作ったのですが 2段目の1番左の画像だけマウスオーバーの画像だけが小さくなってしまいました。(横に短くなっている) 画像の大きさは元の画像もマウスオーバーの画像も同じ大きさです。 cssで指定している画像の大きさも間違いありません。 試しに上のメニューを<div id="header">にして <div class="clear"></div>で区切って 下のメニューを<div id="gnavi">にして分けてもその画像だけが小さくなっています。 htmlはこれです <div id="header"> <ul class="yama"> <li class="logo"><a href>ロゴ</a></li> <li class="kyouiku"><a href="">教育</a></li> <li class="syoukai"><a href="">紹介</a></li> <li class="shizen"><a href="">自然</a></li> <li class="mura"><a href="">村</a></li> </ul> <div class="clear"></div> <div class="line"></div> <ul class="rei"> <li class="name"><a href="">あいうえお</a></li> <li class="abc"></li> <li class="map"><a href="">マップ</a></li> </ul> </div> <li class="name"><a href="">あいうえお</a></li>これが問題のタグです。 文字が足りなかったのでcssの一部ですが /* rei */ #header ul.rei{ float:left; } #header ul.rei li{ float:left; display: inline; } で <li class="name"> のcssですが #header ul.rei li.name { display: block; width:295px; height:51px; } #header ul.rei li.name a { display: block; background: url(../img/name.jpg) no-repeat top left; text-indent:-9999px; height:100%; width:100%; } #header ul.rei li.name a:hover { display: block; text-indent:-9999px; height:100%; width:100%; background: url(../img/name_om.jpg) no-repeat top left; } という風にしています。 初心者のため使い方が間違っているところが多々あると思いますがよろしくお願いします。

    • ベストアンサー
    • CSS
  • UL, LIタグでの質問

    いつもお世話になっています。 自分では以前から疑問に思いつつも放置していた問題です。 その問題とは、UL,LIタグでツリー表示を行い、 各項目にリンクがあります。その項目の選択位置が 項目の文字の長さによって文字がないところでも選択が出来るのです。 言語仕様であればそれで通すのですが、そういうわけでもなさそうな気配なのでどうにか解決したいと思っています。 ソースは下記のようになっていています。 <nobr><ul> <li id=foldheader><a href="">ZZZZZ</a></li> <ul id=foldinglist style=display:none style=&amp;{head}> <li id=foldend><a href="">XXXXXXX</a></li> <ul id=foldinglist style=display:none style=&amp;{head}> </ul> </ul> </nobr> これでいうと、ZZZZZの文字のちょっと後ろがクリックできて、XXXXXXXが表示されます。 で、XXXXXXXが表示されるとXXXXXXXの長さ+アルファぶんだけ後ろまでZZZZZの後ろに選択できる範囲が広がります。 また、XXXXXXXの前にも選択出来る範囲が出てきます。 これを、純粋に文字の部分だけ選択出来るようにする方法はあるのでしょうか? 以上、よろしくお願いいたします。 ※文字数制限により、開閉のJavaScriptは省略

    • ベストアンサー
    • HTML
  • li 3列表示

    こんにちは、 下記のliを3列づつ表示したいのですが、 どのようにすればよいでしょうか? (2列とかはあるのですが・・・tableにすべき?) <ul id="leftlist1"> <li><a href="#">a1</a></li> <li><a href="#">a2</a></li> <li><a href="#">a3</a></li> </ul> <ul id="leftlist2"> <li><a href="#">b1</a></li> <li><a href="#">b2</a></li> <li><a href="#">b3</a></li> </ul> <ul id="leftlist3"> <li><a href="#">c1</a></li> <li><a href="#">c2</a></li> <li><a href="#">c3</a></li> </ul>

    • ベストアンサー
    • CSS
  • HTMLのulタグで表示される「・」を消したい

    ネットで調べて下記二通りを試しましたが消せませんでした。 1.HTMLで<ul class="doterase">とし、CSSで .doterase li { list-style: none; } とした。HTMLでClass="doterase"としているのにCSSで.doteraseと先頭に「.」を追加した理由は 判りません。 2.HTMLでulタグに <ul style="list-style: none;">としても同じでした。 HTML,CSSのコードは下記のとおりです。 HTML <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>日本の将来る</title> <meta name="discriptio" content="八十路の提言"> <link rel="stylesheet" href="homestyle.css"> </head> <body> <h1><center>日本の将来</center></h1> <h2><center>八十路の提言</center></h2> </body> <ul > <li> <a href="https://google.co.jp">aaaa</a> </li> <li> <a href="https://google.co.jp">bbbb</a> </li> <li> <a href="https://google.co.jp">cccc</a> </li> </ul> <div style="border: 3px none;"> 枠線を実線で装飾11111111111111111111111111111111111111111111111111111111 </div> </html> CSS @charset "UTF-8" ; body { background-color : #adcc33; font-size: 40px; width: 200; height:200; position: relative; /* 日本の将来に期待する */ top: 10px; /* 上から10px */ p { font-size: 40px; } <style> .doterase li { list-style: none; } </style> <ul class="doterase"> <li>aaa</li> <li>bbb</li> <li>ccc</li> </ul> li { color: #000000; font-size:30px } 参考書を理解しないままコピペでつくっています。HTML/CSSは最近始めたばかりなので超初心者です。よろしくお願いいたします。Windows11なのでHTML,CSS.共最新バージョンだと思います。 なお、これと同じ内容で他のQ&Aサイトに投稿しましたが質問の仕方が拙かったようで内容の訂正でなく取り消し後再質問したら回答がなくなったためこちらに質問しています。

    • ベストアンサー
    • HTML
  • <ul>タグの後の<div>タグのmarginについて教えてください

    <ul>タグの後の<div>タグのmarginについて教えてください 現在制作しているホームページで下記のようなタグを書きました。 ☆・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・☆ ul.menu-a {margin:0;        padding:0;} ul.menu-a li {float:left;         text-indent:-9999px;         overflow:hidden;         list-style:none;} ul.menu-a li a {display:block;          width:100px;          height:100px;} li.menu-a1 a {background:url(◯.gif) 0 0 no-repeat;} li.menu-a1 a:hover {background:url(◯.gif) 0 -100x no-repeat;} li.menu-a2 a {background:url(◯.gif) -100px 0 no-repeat;} li.menu-a2 a:hover {background:url(◯.gif) -100px -100px no-repeat;} .font{color:#000000;     margin : 100px 0px 100px 0px;     border: 1px ;} <img src="image/123.gif">  <ul class="menu-a">   <li class="menu-a1"><a href="123.html">123</a></li>   <li class="menu-a2"><a href="456.html">456</a></li>  </ul>  <ul class="menu-b">   <li class="menu-b1"><a href="abc.html">abc</a></li>   <li class="menu-b2"><a href="efg.html">efg</a></li>  </ul> <div class="font">あいうえお</div> ☆・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・☆ ※<ul>部分はオンマウスで画像が変わるように外部スタイルシートで指定しています。 ※長くなるのでul.menu-bのスタイルシート部分は省きましたがul.menu-a とほぼ同じです。 このようなタグの場合、<div class="font">あいうえお</div>の部分に指定している margin要素は1番上の<img src="image/123.gif">から考えた数値になるのでしょうか? <ul class="menu-b">の後から考えるものだとばかり思っていたのですが あれこれ試していく中で、今回のような<ul>の使い方をしている場合は <ul>タグの存在は無視するべきなのでは?と思い至ったのですが確証には至らず ここで質問させて頂きました。 様々な本やサイト様を参考させては頂いてるものの 自己流・付け焼き刃な知識しかないものでおかしな質問になっていたらすいません。 詳しい方がいらっしゃいましたら、どうぞよろしくお願いします。

    • ベストアンサー
    • HTML
  • ul/liタグでのリスト表示におけるレイアウト崩れについて

    ul/liタグでのリスト表示におけるレイアウト崩れについて 現在、タブコントロールの画面を作成しているのですが、 画面のレイアウトが崩れてしまう現象が発生しています。 2日間デバッグしてみたのですが解決しませんでしたので、 現状のHTMLの抜粋をご提示致しますので お手数ですがご助言して頂けないでしょうか。 ■タブコントロール画面について 画面上にタブを新規に作成するボタンがあり、 そのボタンを押下することによりjavascriptで ul/liのコードを動的に作成しています。 (prototype.jsを使用しています。) タブは画面上最大5個まで同時に表示できますが 6個以上になった場合は、タブコントロールの両端に スクロールボタン(「戻る」・「進む」)を表示するようにしています。 また、対象のタブをクリックされた場合には画像で「閉じる」ボタンを 表示するようにして、閉じるボタンを押下した場合はその タブを消去するようにしています。 なお、タブコントロールの完成イメージとしては以下のサイト のようなものを目指しています。http://members.ecnavi.jp/ (タブコントロールの下にパネル部分があり選択されたタブ においては、タブのボトム部分の線が隠れる仕様です。) ■現象の詳細 タブが6個以上になり「戻る」ボタンを表示した際にタブ部分が 「戻る」ボタンの半分程度の高さに浮き上がって表示されてしまいます。 なお、「進む」ボタンに関しても同様です。 ※浮き上がってしまっているタブの枠線下部には線は引かれていません。  □□□□□ □      (実際は、上段の□が高さ半分程度下に下がるイメージです。) #####生成されたHTMLの抜粋##### <div id="myTab"> <ul class="tabs"> <li class="LRButton" style="width: 18px; height: 27px; background-color: rgb(176, 196, 222);"> &lt; </li> <li title="6:1f"><div style="width: 89px; height: 27px; overflow: hidden;" class="ItemIdle"> <div style="width: 69px; font-size: 12px; padding: 5px; overflow: hidden; float: left;">6</div> <div style="float: right; display: none;"> <a href="javascript:void(0);"> <img src="./images/Close.gif" style="width: 14px; height: 14px; border: medium none; margin-right: 2px; margin-top: 2px;" title="close"> </a> </div> </div> </li> <li class="tab-active" title="6:1fffff"> <div style="width: 89px; height: 27px; overflow: hidden;" class="ItemSelected"> <div style="width: 59px; font-size: 12px; padding: 5px; overflow: hidden; float: left;">6</div> <div style="float: right; display: block;"> <a href="javascript:void(0);"><img src="./images/Close.gif" style="width: 14px; height: 14px; border: medium none; margin-right: 2px; margin-top: 2px;" title="close"> </a> </div> </div> </li> </ul> </div> <div class="panel"> <table width="825px" cellspacing="0" cellpadding="0" border="0"> <tbody> <tr>

  • CSSで<ul><li>タグを使ってどのブラウザでも同じように表示させたい。

    .ul { width: 120px; height: auto; float: left; font: 12; line-height: 150%; padding: 0; list-style-image: url(img/side-tab.gif); } .li { font-size: 12px; margin-left: 1.5em; } <ul class="○○○"> <li>11111</li> <li>22222</li> <li>33333</li> <li>44444</li> <li>55555</li> <li>66666</li> </ul> このようなコードでlistの頭には画像を使いたいのですが、どうしてもブラウザごとに表示がばらばらになってしまいます。 横幅は185pxまででおさめて、かつlistの画像とテキストが同じ列に表示されるようにしたいと考えています。 唯一firefoxだけが思うように表示できました。 IE6と7でも違う表示になりました(IE6だとかなり右寄り) operaに関しては画像とテキストの縦位置がずれてしまっていました。 CSSに関してはいろいろいじってて、なにがなんだがわからない状態になってしまいました・・ これを一つのCSSできれいに表示することは不可能でしょうか? どうかよろしくお願致します。

    • ベストアンサー
    • HTML