+ -
当前位置:首页 → 问答吧 → 是div>a还是ul>li>a

是div>a还是ul>li>a

时间:2010-10-19

来源:互联网

我以为很多人都知道这两种结构的区别,结果,很多人基本忽略了div>a结构的存在,
所以我想在这里说明这两者的区别,毕竟良好符合语义而不冗余的结构是我们前端所追求的。

许多时候链接列表的形式结构无非是两种结构:div>a和ul>li>a这两种。原先不知道怎么去用它们,
于是见了链接列表就写ul>li>a,忽略div>a的存在。实质上两者是有区别的。
ul>li>a结构适合构建复杂效果,div>a适合简单的效果。前者本身就多了个标签,所以就承担了更多的功能。

一个最常见的例子就是我们通常拿无序列表作为页面的主要导航栏,甚至比较复杂的导航栏还要嵌套一层div或者两层div标签。
从这个角度出发,我们考虑的是效果需要,它要几个标签,我们就给它几个,如果它要两个呢,你还用无序列表作为你的结构吗?
答案是很多人还是这样做了,乐此不疲。我起初也是如此,但是后来我仔细想了想,才区分了两者的区别,原来自己在学习的时候,
更多的是盲目随从他人,而忽略了内心的疑问。

所以,当我们需要复杂的链接效果时,就选择无序列表,而效果简单,不会改动的地方,就可以使用div>a结构。
适合div>a的实例:

门户站首页头部导航:
1.jpg (11.52 KB)
2010-10-19 11:36


页面底部链接:
2.jpg (4.92 KB)
2010-10-19 11:36


繁多的产品列表:
3.jpg (6.08 KB)
2010-10-19 11:36


分页导航:
4.jpg (5.29 KB)
2010-10-19 11:36


以上纯属个人见解,若有意见,可以尽情讨论。

作者: xmlovedoudou   发布时间: 2010-10-19

很惭愧,还没接触过大型网站的设计呢,都是一些企业站点的设计。

作者: dadazouzh   发布时间: 2010-10-19