近日,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)了。