結論から書くと次の通り
HTML
<ul>
<li><a href="#">item1</a></li>
<li><a href="#">item2</a></li>
<li><a href="#">item3</a></li>
<li><a href="#">item4</a></li>
</ul>
CSS
ul {font-size:0}
ul li{
font-size:10px;
display:inline-block;
text-align:center;
vertical-align:middle;
}
display:inline-blockで横並びメニューを表現すると、
HTMLのマークアップの問題でメニューの間に1文字分の空白ができてしまいます。
上の方法では、font-sizeを0にして幅をなくす方法で対処しています。
このほかにも次のような方法があるようです。
- 可読性のためのスペースをコメントアウトする方法
-
<ul><!-- --><li><a href="#">item1</a></li><!-- --><li><a href="#">item2</a></li><!-- --><li><a href="#">item3</a></li><!-- --><li><a href="#">item4</a></li> </ul>
CSSセレクタでDOMみたいにテキストノード指定ができると綺麗なんだけどな~。。。