当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > 描述性列表UL和DL的表现形式

CSS样式表
用css实现图片垂直居中的使用技巧
CSS List Grid Layout 图片垂直居中
IE6网页神奇BUG
Marquee高级用法实例代码
web标准知识——从p开始,循序渐进
web标准知识——用途相似的标签
html链接与文本标签们
当标题不能显示完整的解决方法
详解链接的rel与target区别
使css兼容IE8的小技巧
CSS 首字母大写代码
CSSvista可同时在IE和Fifrefox调试的CSS编辑提供下载
css font缩写总结附实例
css下margin、padding、border、background和font缩写示例
用CSS来控制图片显示大小的代码
css下划线颜色一句话代码
css常见问题解决方法小结
relative absolute无法冲破的等级问题解决
div总是被select遮挡的解决方法
CSS文字截取功能实现代码

CSS样式表 中的 描述性列表UL和DL的表现形式


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 208 ::
收藏到网摘: n/a


之前就见过很多网站在侧边栏上使用<dl />标签对来完成侧边栏栏目的布局,最近在研究DEDECMS的默认模板时,也发现该模板在大量的地方使用<dl></dl>标签对来完成页面的布局,比如模板首页的栏目循环以及侧边栏的栏目都是用<dl></dl>标签对来实现的。而在研究全球使用数最多的博客程序Wordpress时,发现它的侧边栏却是使用的是最常见的<ul></ul>列表来实现的。
同样的布局<dl />与<ul />都可以实现,并且就最终的表现来看并不存在区别,那么这两者之间到底有什么区别呢?或者说使用哪一个来完成布局才更为合理呢?
<ul />与<ol />是最常见两种列表表现形式,这两种列表最本质上的区别就是<ul />指的是无序列表而<ol />指的是有序列表。最常见的两种不同表现是:平常所见的新闻标题列表基本上都是由<ul />来完成布局的,而很多网站的侧边栏上会有一些新闻点击数排行榜之类的列表,这个时候就需要使用到有序列表<ol />,因为可以很容易的通过<ol />标注出排行顺序来。

回过头来我们看Wordpress侧边栏的结构代码:

<div id=”sidebar”>
<ul>
<li><h2>栏目标题一</h2>
<ul>
<li>新闻标题一</li>

<li>新闻标题N</li>
</ul>
</li>

<li><h2>栏目标题N</h2>
<ul>
<li>新闻标题一</li>

<li>新闻标题N</li>
</ul>
</li>
</ul>
</div>

很显然,这是一个<ul />嵌套<ul/>的结构,通过<h2 />去显示栏目标题(补充一点:对于博客来说,就页面中的内容重要程度而言,这里并不适合使用<h2 />标签来显示栏目标题,<h2 />标签应该是用在日志标题上的)。
很多使用<dl />来布局的网站的结构代码如下:

<div id=”sidebar”>
<dl>
<dt>栏目标题一</dt>
<dd>
<ul>
<li>新闻标题一</li>

<li>新闻标题N</li>
</ul>
</dd>

<dt>栏目标题N</dt>
<dd>
<ul>
<li>新闻标题一</li>

<li>新闻标题N</li>
</ul>
</dd>
</dl>
</div>

这是一个复杂表现上的定义列表,与上一个结构代码的最大的区别是使用<dt />来替代<h2 />标签。简单意义上的定义列表结构如下:

<div id=”sidebar”>
<dl>
<dt>标题一</dt>
<dd>内容一</dd>

<dd>内容N</dd>

<dt>标题N</dt>
<dd>内容一</dd>

<dd>内容N</dd>
</dl>
</div>

这种结构的代码也可以表现出列表的形式,但事实上这种结构并不太适合做为一个列表来使用,这种简单的<dl />更适合做为不同内容段的描述。比如:

<dl>
<dt>我的照片</dt>
<dd>作者:摄氏度</dd>
<dd>相机:佳能400D</dd>
<dt>我的博客</dt>
<dd>作者:摄氏度</dd>
<dd>程序:wordpress</dd>
</dl>

于是我们可以理解为:<dl />标签结构更多的是表现一种描述性的列表,它本身并不具备做为列表显示的意义。当<dl />与<ul />或是<ol />标签结构组合起来使用时,才能更好的表现出描述列表的作用。
之前的那个被指为不符合标签语义的试验《使用UL进行宽度固定的多行多列布局》,现在换成<dl />标签来做是否就适合标签语义化了呢?