そのエントリーのカテゴリーだけスタイルを変える
知人(デザイナー)から質問されて昼から延々考えていた事。 そのエントリーがhogeというカテゴリーにある場合、カテゴリーのリストをそのままメニューにしているようなサイトで、そのページではhogeという「メニュー」だけ他よりも目立つようにスタイルを変えたい、という質問。
取り敢えず自分のサイトに必要が無いとちゃんと考えない私なのでありますが、このアイデアって結構実用的なんで、他のところで使いたい!とか思って考えたです。
<MTEntryCategories>
.pc<$MTCategoryLabel$> a { color: #ff0000}
.pc<$MTCategoryLabel$> a:link { color: #00ff00;}
.pc<$MTCategoryLabel$> a:visited { color: #0000ff;}
.pc<$MTCategoryLabel$> a:active { color: #ffff00;}
.pc<$MTCategoryLabel$> a:hover { color: #ff00ff;}
</MTEntryCategories>
これがスタイルシート。 カテゴリー表記をそのままエレメント名にしちゃう、という方法が一番良いんじゃないかと思います。 これであればカテゴリー名を変更しても追随してくれますし。 aタグについて細かく設定しちゃってますけども、メニューの場合ってvisitedとlinkは同じでも良いんで、もっと省略(っていうか纏めて)おいた方が分かりやすいかも。
<MTCategories>
<div class="pc<$MTCategoryLabel$>">■<a href="<$MTCategoryArchiveLink$>" title="<$MTCategoryCount$>ページあります"><$MTCategoryDescription$></a><br /></div>
</MTCategories>
これがhtml部分。 カテゴリーのリストを普通に作成するんですけど、そこでいちいちカテゴリー名のスタイルを呼び出してます。 しかし、宣言したスタイルは1つしかないので、それ以外は全部「反映されないのに呼び出している」事になります。 <div><br /></div>なんてちょっと無理のあるタグで恐縮ですが、自分が使う場合はもっとエレガントなソースにします...。
と、そんなこんなで知人にこのまま提出します。 こんなんで良ければ使ってね。
追記:padma colorsでも使いたくなってきた(笑)




