CSS学习之类目之间竖线的练习实例


  最近在做一个网站项目碰到一个老话题,就是类目之间竖线的做法.

  我以前的做法都是在每个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>


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3