CSS高级布局已逐渐流行,但面对所谓DIV+CSS布局的叫法让人更为担心,不要让DIV成为Table的替代品,多层嵌套的DIV会严重影响代码的可阅读性,活用HTML为我们提供的标签吧。
什么时候应该用DIV?
虽然在这方面没有什么硬性的规定,但个人认为DIV更适用于大体框架的定位.例如我们要定义一块头部的区域,一般会这样定义一个DIV:
<div id="header">这里就是头部框架里要写的内容</div>
当然,可以用class来定义,但一般来讲如不是在同一页面会重复的元素,用id能更好的区别开来.
本人观察了下alistapart的首页代码,它的头部定义代码如下:
以下是引用片段:
<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>
效果可访问:ALA
定义了最上面的导航(ul部分),左边的大logo和那个圆圆的No.xxxx的标记.
他没有使用DIV来做顶部的框架,但却很好的说明了这些代码的用途,为什么?因为他活用了HTML提供的标签,以及样式名称的定义
其它最常用的布局标签
h1
这个标签或许真正会去用的人很少,因为它显示的字体真的是太"大"了,但我们是CSSer,有什么标签样式不能改呢?而且它所能表达的意思就如同它原先的作用一样明显(大标题)我想你已经知道怎么去用它了 ^_^
ul
这个标签很多情况是用来定义导航部分的,当然也可以用ol来代替,但导航连接没有什么顺序之分吧,所以还是用ul来的比较确切(去掉CSS后效果更明显)
b
这个已经不再推荐使用的标签,在布局上却能带来不少的方便(因为短),虽然我不是太赞成使用这个标签,但有些时候(比如细小地方的布局定义)还是不错的选择
h2
h2使用最多的地方应该不是布局上,而是副标题,但有些地方需要定义栏目样式的话,用这个标签比较合适,栏目内容就使用p