我有一个非常具体的问题,因为我正在尝试使用没有图像或 JavaScript 的纯 CSS 创建具有角度的导航。我已经弄清楚它可以完美运行,但我遇到的问题是 IE 9 和 Chrome 看起来不同。我可以通过更改伪元素的边距来让两者都工作,但我更喜欢一个解决方案来同时工作。如果有人能弄清楚为什么边距不同,并给我一个单一的 CSS 解决方案,可以在两种浏览器中工作,那就太好了。否则我将不得不为 IE 添加一个单独的类并强制它使用单独的 CSS 条目工作。
这是HTML
<ul>
<li><a href="#" >Some Navigation</a></li>
<li><a href="#">More navigation</a></li>
<li><a href="#">Another Nav</a></li>
<li><a href="#">Test Nav</a></li>
<li><a href="#">A Test Navigation</a></li>
</ul>
CSS
ul {
float:right;
list-style-type:none;
margin:0;
padding:0;
width: 300px;
}
ul li a {
float:left;
width:300px;
}
ul li{
float:left;
width: 300px;
height:50px;
line-height:50px;
text-indent:10%;
background: grey;
margin-bottom:10px;
border:1px solid black;
}
ul li:before {
content:"";
position:absolute;
margin-top:-1px;
border-top: 26px solid transparent;
border-bottom: 26px solid transparent;
border-right: 21px solid black;
margin-left:-22px;
}
ul li:after {
content:"";
position:absolute;
border-top: 25px solid transparent;
border-bottom: 25px solid transparent;
border-right: 20px solid grey;
margin-left:-320px;
}