近日,Stu Nicholls根据A List Apart的Sliding Doors of CSS, Part II 一文,改写了滑动门菜单,发表了100% clickable Sliding doors ,弥补了9个像素的点击盲区。
点击盲区图示,很明显可见到在上面一张图菜单的边缘无手形。
原有代码:
#nav li {
float:left;
background:url("left_both.gif") no-repeat left top;
margin:0;
padding:0 0 0 9px;
border-bottom:1px solid #765;
}
#nav a {
float:left;
display:block;
background:url("right_both.gif") no-repeat right top;
padding:5px 15px 4px 6px;
text-decoration:none;
font-weight:bold;
color:#765;
}
改进过的代码:
#nav li {
float:left;
background:url("right_both.gif") no-repeat right top;
margin:0 0 0 9px;
padding:0;
}
#nav a {
float:left;
display:block;
position:relative;
left:-9px;
margin-right:-9px;
width:.1em;
background:url("left_both.gif") no-repeat left top;
padding:5px 20px;
text-decoration:none;
font-weight:bold;
color:#765;
}
比较上面的代码,可以看到左右背景图互换了下,采用了相对定位,列表项目和它的链接使用了正负边界的方法,作者在IE5.x, IE6, IE7, Firefox and Opera调试成功。
演示页面,原来的当前位置代码被我简化掉了,改用类选择器(Class Selectors)了。