水平方向のナビゲーションバーを作成しています。CSSは次のとおりです。
#topnav {
clear: both;
overflow: hidden;
display: table;
}
#topnav ul {
display: table-row;
}
#topnav ul li {
display: table-cell;
vertical-align: middle;
background: #1b4260;
position: relative;
}
#topnav a {
display: block;
color: white;
padding: 10px 0px 15px 10px;
font-size: 14px;
width: 100px;
text-align: center;
}
#topnav ul li+li:before{
content: "*";
position: absolute;
top: 11px;
color: #ff0000;
float: left;
}
そしてここにHTMLがあります:
<p>---</p>
<p>---</p>
<div id="topnav">
<ul>
<li>
<a href="blah">Item 1</a>
</li>
<li>
<a href="blah">Item 2</a>
</li>
<li>
<a href="blah">Item 3</a>
</li>
</ul>
</div>
これにより、小さなアスタリスク区切り文字のあるナビゲーションバーが作成されます。すべてのブラウザで問題なく表示されます...
...Firefoxを除く。Firefoxは、生成されたコンテンツの「position:absolute」を無視します。
なぜそれをするのでしょうか?CSSに何か問題がありますか?