div+css网页布局已逐渐流行,但面对所谓div+css布局的叫法让人更为担心,不要让div成为table的替代品,多层嵌套的div会严重影响代码的可阅读性,活用html为我们提供的标签吧。
什么时候应该用div?
虽然在这方面没有什么硬性的规定,但个人认为div更适用于大体框架的定位.例如我们要定义一块头部的区域,一般会这样定义一个div:
<div id="header"> 这里就是头部框架里要写的内容</div>
当然,可以用class来定义,但一般来讲如不是在同一页面会重复的元素,用id能更好的区别开来.
本人观察了下一个著名网站的首页代码,它的头部定义代码如下:
<ul id="navbar">
<li id="articles">
<a href="/articles/" title="articles">articles</a></li>
<li id="topics">
<a href="/topics/" title="topics">topics</a></li>
<li id="about">
<a href="/about/" title="about">about</a></li>
<li id="contact">
<a href="/contact/" title="contact">contact</a></li>
<li id="contribute">
<a href="/contribute/" title="contribute">contribute</a></li>
<li id="feed">
<a href="/feed/" title="feed">feed</a></li>
</ul>
<h1 id="masthead">
<a href="/">
<img src="/pix/alalogo.gif" alt="a list apart: for people who make websites" />
</a>
</h1>
<div id="ish">
<a href="/issues/214" title="issue 214">no. <em>214</em></a>
</div>
定义了最上面的导航(ul部分),左边的大logo和那个圆圆的no.xxxx的标记.
他没有使用div来做顶部的框架,但却很好的说明了这些代码的用途,为什么?因为他活用了html提供的标签,以及样式名称的定义
其它最常用的布局标签
h1
这个标签或许真正会去用的人很少,因为它显示的字体真的是太"大"了,但我们是csser,有什么标签样式不能改呢?而且它所能表达的意思就如同它原先的作用一样明显(大标题)我想你已经知道怎么去用它了 ^_^
ul
这个标签很多情况是用来定义导航部分的,当然也可以用ol来代替,但导航连接没有什么顺序之分吧,所以还是用ul来的比较确切(去掉css后效果更明显)
b
这个已经不再推荐使用的标签,在布局上却能带来不少的方便(因为短),虽然我不是太赞成使用这个标签,但有些时候(比如细小地方的布局定义)还是不错的选择
h2
h2使用最多的地方应该不是布局上,而是副标题,但有些地方需要定义栏目样式的话,用这个标签比较合适,栏目内容就使用p