Category : XHTML/CSS

previous entry dlで写真をマークアップ | サイト全体に連なるh1〜h6 next entry

ul,liでメニューをマークアップ

Date2007-02-17 Comment2 CategoryXHTML/CSS Tagsul, XHTML

メニューを「リンクのリスト」ととらえて,ul,liでマークアップしているところが増えていますね。

本文中のまとまった意味を持つ一連の文章なら,おもに<p> ...... </p>でマークアップしますが,メニューはそれとは役目も意味も違います。やはり「リスト」ですね。MovableTypeのデフォルトのテンプレートも,ul,liでマークアップされていました。

実際にはこんなふうに書かれています。

<ul class="module-list">
  <MTEntries lastn="10">
    <li class="module-list-item"><a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a></li>
  </MTEntries>
</ul>

<MTEntries lastn="10"> ...... </MTEntries>の部分は最新の10記事に対して順に書き出されるので,li要素が10コのリストができることになります。

カテゴリ,最新の記事,最新のコメント,最新のトラックバック,RSSフィード,...,それぞれリストになりますが,ぼくはそれぞれに異なるclass名をつけています。(ページ内で1度しか使わないならidをふってもよいですね)

<ul class="category-list">
  <li> ...... </li>
  <li> ...... </li>
  ......
</ul>

<ul class="entry-list">
  <li> ...... </li>
  <li> ...... </li>
  ......
</ul>

<ul class="comment-list">
  <li> ...... </li>
  <li> ...... </li>
  ......
</ul>

<ul class="trackback-list">
  <li> ...... </li>
  <li> ...... </li>
</ul>

こうしておくと,リストアイテム(li要素)の頭にそれぞれ異なる記号,または画像をつけることができます。

.module ul li {
  margin-left: 23px;
  text-indent: -6px;
}

ul.entry-list li {
  list-style-image: url(/img/mk-entry.gif);
}

ul.category-list li {
  list-style-image: url(/img/mk-cate.gif);
}

ul.comment-list li {
  list-style-image: url(/img/mk-comm.gif);
}

ul.trakback-list li {
  list-style-image: url(/img/mk-tb.gif);
}

ul.feed-list li {
  list-style-image: url(/img/mk-feed.gif);
}

テキストの位置合わせをして,list-style-imageでリストごとにそれぞれ別の画像を指定します。

list-style(list-style-type,list-style-image)を特に指定しないでいると,通常は

  •  

がつきます。この印をつけたくないときは,list-style: none;とします。

ぼくも最近は,ブログではない通常のウェブサイトを作るときも,メニューはul,liでマークアップするようになりました。ちょっとWeb標準に近づいたような気がします(笑)

Comments (2)

こんにちは!
コメント第1号をゲットするので緊張しているしんのすです。

リストマークにlist-style-imageを使うのが妥当だとは思いますが、指定するイメージによってリストマークとテキストの縦位置に微妙なズレ?が出来たりするので、私は background でイメージ指定と縦位置を調整するようにしています。
あとは padding でテキストの調整ですね。text-indentだと折り返される場合にヘンテコになっちゃうので。

by しんのす (2007年2月18日 17:08)

しんのすさん,1号コメントありがとうございます。それからアドバイスも感謝です。

メニューのリストの部分は,backgroundで画像も試してみましたが,あんまり違いがないならlist-styleで画像のほうが分かりやすいかなと思ったので。細かい調整が必要なときはbackgroundでやってみますね。

text-indentを使ったのもちょっとした理由があって,コメントがいくつか並ぶとその理由が分かると思います。

by 麦@d-spica (2007年2月18日 22:00)

Search

RSS feed

あわせて読みたい

あわせて読みたいブログパーツ

Contact me

  • My status Skype : webmugi

Validation

  • Valid XHTML 1.0 Strict
  • Valid CSS!

Top