• ベストアンサー

CSS フォントサイズの違うリストの横並び

http://www.muji.net/ie/ 上記のサイトのようにグローバルメニューのフォントサイズの違うものを横並びにし、 さらにはフォントの変わるところで縦線も入れたいです。 リストスタイルには任意の画像を使いたいと思って試行錯誤していますが、 どうしてもフォントサイズを変えるとずれてしまいます。 特にIE6で見ると何を直して良いのか分からないくらいです。 わかりづらい文章で申し訳ないですが教えてください。 よろしくお願いします。

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

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

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="ja"> <head> <meta http-equiv="content-type" content="text/html; charset=Shift_JIS"> <title>Untitled</title> <meta http-equiv="Content-Style-Type" content="text/css"> <style type="text/css"> <!-- ol#SiteMap{ display: block; position: absolute; top: 0px; padding: 0px; width: 100%; margin: 0px; background-color: rgb(200,200,100); } ol#SiteMap li{ display: block; width: 16%; float: left; text-align: center; font-size: 1.4em; } ol#SiteMap li + li.sub{ /* 隣接セレクタ(li に続くli.sub */ border-left: solid 1px black; } ol#SiteMap li.sub + li.sub{ /* 隣接セレクタ(li.sub に続くli.sub */ border-left: none; } ol#SiteMap li.sub + li{ /* 隣接セレクタ(li.sub に続くli */ border-left: solid 1px black; } ol#SiteMap li.sub + li.sub{ /* 隣接セレクタ(li.sub に続くli.sub */ border-left: none; } ol#SiteMap li a{ display: inline-block; width: 96%; height: 1.4em; margin-left: 2%; margin-right: 2%; } ol#SiteMap li.sub a{ font-size: 0.6em; } --> </style> </head> <body> <h1>title</h1> <h2>subTitle</h2> <div class="abstract"> <p> 要約 </p> </div> <div class="Text"> <h2>ArticleTitle</h2> <p> 記事 </p> </div> <!-- パンくずリスト --> <ol id="SiteMap"> <li><a href="#">リンク(1)</a></li> <li><a href="#">リンク(2)</a></li> <li><a href="#">リンク(3)</a></li> <li class="sub"><a href="#">リンク(4)</a></li> <li class="sub"><a href="#">リンク(5)</a></li> <li><a href="#">リンク(6)</a></li> </ol> </body> </html>

onyan
質問者

お礼

ORUKA1951さんありがとうございます! お礼が遅くなって申し訳ありません。 なかなかうまく行かず色々試してやっとできました。 CSSって本当に難しいですね。。。 頑張って勉強します。 ありがとうございました。

その他の回答 (2)

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

たとえば <ol id="siteMap"> <li><a href=""></a></li> <li><a href=""></a></li> <li><a href="" class="sub"></a></li> <li><a href="" class="sub"></a></li> <li><a href=""></a></li> </ol> というHTMLだと <ol></ol>を絶対配置、blockにしてpaddingを0pxにする。 <li></li>をblockにして、その幅を%で指定してfloatで並べる。 隣接セレクタを使って、classセレクタが変わる所でborder: solid 1px blackを指定する。 ・・・というところでしょうか。 背景画像は<ol>で、各リンクの背景は<a>に対して行う。

onyan
質問者

お礼

ご回答ありがとうございます。 ><ol></ol>を絶対配置、blockにしてpaddingを0pxにする。 これは #test{ display:block; padding:0; } ><li></li>をblockにして、その幅を%で指定してfloatで並べる #test2 {display:block; padding:●●%; float:left; } ということですか? 初心者の質問で申し訳ないのですが 教えていただけると嬉しいです。 よろしくお願いいたします。

  • lesstia
  • ベストアンサー率45% (44/96)
回答No.1

この文字はテキストではなく画像ですね。 普通に大きさの違う文字が描かれている画像を並べてアンカーにしているだけかと。

onyan
質問者

お礼

早速ありがとうございます。 画像ではなくテキストで作りたいと思っています。 説明不足で申し訳ありませんでした。 それでも方法としては同じなのでしょうか? 面倒でなかったらコードも教えていただけるとありがたいです。 よろしくお願いいたします。

関連するQ&A