网页设计中典型的header代码结构

所属分类: 网页制作 / CSS 阅读数: 380
收藏 0 赞 0 分享

页面中header部分一般位于最上端(有时根据需要也会位于某一侧,不管它在页面中的位置如何,在XHTML代码中它总是优于其它元素先加载),内容主要包括网站名称(Logo,次级标题可能是网站的一句口号等)和网站的导航部分。在推行Web标准的现代网络中,Web中对于header的代码结构似乎已经趋于稳定化。下面是一个典型的header代码结构:
<div id="header">
<h1>dudo 博客</h1>
<ul>
<li>首页</li>
<li>CSS</li>
<li>XHTML</li>
<li>JavaScript</li>
</ul>
</div>
这段代码我们可以通过添加CSS代码来实现多种布局样式。
之所以说是典型的布局方式,因为它既够简洁又有语义。<h1></h1>说明了标签内容在页面中的作用和重要层次,<ul>、<li>无序列表列出了站内的所有主要内容分类,并通过<li>标签说明它们是同级相邻的,等等,诸如此类。查看更多本站CSS教程。
但是我们要考虑考虑。导航(也就是我们的menu)在页面应该处于什么样的位置呢?和普通文本相比,它们肯定会处于更高级的位置之上。或者这么说,导航(menu)应该和网站标题的关系更加亲密一些。在我们上面的代码结构中,我们看不出menu和<h>之间的关系来,或者说这些<ul>、<li>标签与<h1>的关系和footer中的<ul>、<li>与<h1>的关系没有任何区别。
因此我们要换一个方式来表达这个语义。我们很容易就会想到使用<dl>、<dt>、<dd>。<dl>来定义一个列表,<dt><dd>说明附属关系。因此上面的header部分我们可以这样来写:
<div id="header">
<dl>
<dt>dudo 博客</dt>
<dd>首页</dd>
<dd>CSS</dd>
<dd>XHTML</dd>
<dd>JavaScript</dd>
</dl>
</div>
如果你还有其它的内容要在header中出现,则可以配合<ul>、<li>一起使用:
<div id="header">
<dl>
<dt>dudo 博客</dt>
<dd id="siteMenu">
<ul>
<li>首页</li>
<li>CSS</li>
<li>XHTML</li>
<li>JavaScript</li>
</ul>
</dd>
<dd id="userMenu">
<ul>
<li>加入收藏</li>
<li>设为首页</li>
<li>Engling Version</div>
</ul>
</dd>
</dl>
</div>
这段代码似乎更加饱满一点。我们只从代码就能看出标题与导航的关系,就是<dt>、<dl>的关系。
这似乎有一个问题:<h1></h1>没有了!是的,我们为了表达标题和导航(menu)之间的关系放弃了<h1>的使用。这里,我对是否要在网站标题中使用<h1>持怀疑态度。以我的观点,<h1>不应该出现在页面内容的外围。而我们经常这么去使用(我也经常去这样使用)是为了提高你的“网站标题”在页面中的重要程度。如果对于首页来说可以这么做的话,那么对于子页面来说,页面的内容才是最重要的。有人这么去理解<h1>的使用:网站标题处于最高层次,所以它应该使用<h1>,而页面中的所有需要使用标题的地方都应该使用<h2>、<h3>等等。按这种说法,<h1>似乎只能在一个页面中出现一次。首先,W3C对于<h>标题的规定中没有这一条,其次,导航(menu)要比文章标题级别要高(因为网站的目录就是:网站——分类(用menu来表示)——文章)所以导航应该用二级标题<h2>,充其量文章的标题也只能用个<h3>。这无疑是一种过度语义化,我们根据自己的理解赋予了标签不具有的含义。观看本站更多网页制作教程。
要想突出标题的重要,只用一个方法足够:在<head>中指定<title>...<title>的内容即可。因此,个人建议,在<header>中的设计代码结构使用<dl>、<dt>、<dd>要比使用<h1>和<ul>更具语义。如果你觉得网站的标题部分就应该用<h1>来表示,那么可以在<dt>中嵌套<h1>,合理的语义表达而增加标签并不和代码简洁原则冲突。那么上面的代码
<div id="header">
<dl>
<dt>
<h1>dudo 博客</h1>
</dt>
<dd id="siteMenu">
<ul>
<li>首页</li>
<li>CSS</li>
<li>XHTML</li>
<li>JavaScript</li>
</ul>
</dd>
<dd id="userMenu">
<ul>
<li>加入收藏</li>
<li>设为首页</li>
<li>Engling Version</div>
</ul>
</dd>
</dl>
</div>
友情提醒:本文纯属一家之言,水平有限,谬误难免,所以您在转载此文时一定要注明出自www.dudo.org 以免替我挨拍。
原文连接:http://www.dudo.org/article.asp?id=242
更多精彩内容其他人还在看

css实现的让图片垂直居中的方法

图片的宽度和高度是未知的,没有一个固定的尺寸,在这个前提下要使图片在一个固定了宽度和高度的容器中垂直居中,想想感觉还是挺麻烦的,由于最近的项目可能会用到这个方案,所以把一些常用的方法都收集整理了一下。
收藏 0 赞 0 分享

3个比较有用的网页制作技巧

我们在进行DivCSS布局的时候,非常关注CSS技巧的学习,今天向大家推荐3个所谓的 “顶级”CSS技巧!虽然没有什么新意,但对新手而言却非常重要!
收藏 0 赞 0 分享

让你写出更轻巧、更快并且更不会让你头疼的CSS的方法

为什么我们的CSS变得一团糟——我们真的很容易陷入这样的困惑中。有时这是一开始就马虎编程的结果,有时是由于后期多重的附加代码(hacks)和修改造成的。
收藏 0 赞 0 分享

利用CSS3的checked伪类实现OL的隐藏显示的方法

随着CSS3的发布,国外研究正如火如荼,但在国内还有很多人抱着IE不支持CSS3的想法,始终无动于衷不肯去学习。
收藏 0 赞 0 分享

CSS多浏览器兼容性(IE和Firefox)技巧大全推荐

CSS对浏览器的兼容性有时让人很头疼,或许当你了解当中的技巧跟原理,就会觉得也不是难事,从网上收集了IE7,6与Fireofx的兼容性处理技巧并整理了一下。
收藏 0 赞 0 分享

固定位置显示弹出层(兼容IE6,IE8,FF)

兼容IE6,IE8,FF弹出层固定位置显示,主要是通过css的控制
收藏 0 赞 0 分享

div完美自适应动态上下左右居中

div完美自适应动态上下左右居中,多用于信息提示框效果。
收藏 0 赞 0 分享

display:inline的用法

和 display:inline 对应的是 display:block,block 会让应用了该 CSS 属性的 HTML 标记变成块级别元素,例如 SPAN 是行内显示的,但是你加了 display:block 属性就不一样了
收藏 0 赞 0 分享

css样式实现整个页面背景使用一张图片

最近一直被css背景困扰,因为是仿站,别人网站背景图片无论怎样另存,都是相同文件名,打开一看,整个网站的各个角落背景图片都在一个文件中分布,于是上网搜集资料,发现使用这种方法的网站很多,源自于雅虎最早。
收藏 0 赞 0 分享

关于CSS样式表文件组织形式的整理

以下引用网络上的一篇文章,不知道作者是谁了,总体上概括的不错,但是在实际应用当中还是要根据项目情况来具体实施比较好。
收藏 0 赞 0 分享
查看更多