最近在做一个网站项目碰到一个老话题,就是类目之间竖线的做法.
最近在做一个网站项目碰到一个老话题,就是类目之间竖线的做法.
我以前的做法都是在每个a标签之间用”|”符号来隔开,其实我知道这样做并不是很科学,一直没找到解决途径,看到了TAOBAO UED和blueidea上有介绍这种竖线的做法,
研究了一下.TAOBAO UED中写到:
类目间的竖线无非都只有三种。
1、背景图
在a标签设置一个padding 用宽1px高不等的背景图来position到右侧。
缺点:最后一个还是要用class来隐藏掉背景。
2、符号
在每个a标签之间用”|”符号来填充。
缺点:html文件变大,文件维护变得很麻烦,而且在html中毫无意义。
3、a标签右侧的boder。
同背景图一样,只不过使用border-right来代替。缺点也同上。
其实淘宝网站的做法是。利用ul的overflow:hidden 再将li的margin-right:-1px的做法做出来的。这样的做法就可以同时避免以上的缺点了。现在越来越多的网站都是这样做了。
我尝试写了一下,代码如下:
css部分:
.topnav { width:264px; float:right; display:inline; overflow:hidden}
.topnav ul { margin:0; padding:0}
.topnav li { width:66px; height:auto; float:left; text-align:center; border-right:1px solid #736e6e; margin-right:-1px;}
html部分:
html部分:
<div class="topnav">
<ul>
<li>我要合作</li>
<li>易闻博客</li>
<li>联系我们</li>
<li>网站地图</li>
</ul>
</div>