请参阅: http: //jsbin.com/ihugut
这适用于所有现代浏览器和 IE8+(它在 IE7 中会合理降级)。
(编辑:事实证明这必须在 IE7 中完美工作,所以请参阅我对该解决方案的回答的结尾)
您可能遇到的一个问题是,因为我的目标是使 HTML 尽可能简单,但 CSS 很复杂,因此可能很难进行更改。
HTML:
<ol id="menu">
<li><a href="#">Ballina g</a></li>
<li><a href="#">Konferenca g</a></li>
<li><a href="#">Folesit g</a></li>
</ol>
Run Code Online (Sandbox Code Playgroud)
CSS:
body {
margin: 50px;
background: #aaa
}
#menu {
list-style: none;
counter-reset: num;
background: #444;
float: left;
margin: 0;
padding: 12px 0 0 0;
font: bold 19px sans-serif
}
#menu li {
margin: 0 0 12px 0;
float: left;
clear: both;
}
#menu a {
counter-increment: num;
padding: 3px 15px 3px 50px;
float: left;
position: relative;
color: #0cf;
text-decoration: none
}
#menu a:hover {
color: #fff
}
#menu a:before {
content: counter(num, decimal-leading-zero);
color: #ccc;
position: absolute;
left: 21px;
font-weight: normal
}
#menu a:hover:before {
color: #fff;
}
#menu li:hover {
background: #0cf;
margin-left: -5px;
margin-right: 5px
}
#menu li:hover a {
left: 5px
}
#menu a:hover:after {
content: ' ';
position: absolute;
top: 0;
left: -15px;
width: 0;
height: 0;
border-top: 15px solid transparent;
border-bottom: 15px solid transparent;
border-right: 10px solid #0cf
}
Run Code Online (Sandbox Code Playgroud)
这是在 IE7 中完全运行的版本: http: //jsbin.com/ihugut/3
HTML 必须被破坏:
<ol id="menu">
<li><a href="#"><span>01</span>Ballina g<span class="arrow"></span></a></li>
<li><a href="#"><span>02</span>Konferenca g<span class="arrow"></span></a></li>
<li><a href="#"><span>03</span>Folesit g<span class="arrow"></span></a></li>
</ol>
Run Code Online (Sandbox Code Playgroud)