创建一个纯CSS的水平导航条_Web标准教程
导航条由放在一行表格单元里的图形图像构成。由于人们不再推荐用表格来定位任何非表格的页面内容,所以很多制作Web的人正在寻找(新的)方法,用结构化的
XHTML标记和CSS格式来创建导航条。
一个简单的CSS导航条
创建CSS样式文本导航条的最简单解决方法也许就是把所有的链接都放在一行文本里,就像例A里的一样。
这种方法看起来很合理也很直观。但问题是,把所有的链接都放在一行文本里就很难控制链接之间以及前后的空白。所以,为了避免所有的链接都挤在一起,你最
后通常都不得不插入管道(垂直条)和非换行的空白字符作为分隔符。
就如下面的代码所示,结果很难是我们所要的清晰、结构化的标示。
以下为引用的内容:
<div id="navbar1">
<a href="link1a.html">Button 1</a> | <a
href="link2a.html ">Button 2</a> | <a href="link3a.html ">
Button 3</a>
</div>
如果为了应用创建按钮背景和滚动效果所需要的额外CSS样式,你就要加入<span>标签,这样的话标示会变得更加混乱。
基于列表的CSS导航条
创建CSS导航条的另一种方法是使用<ul>和<li>标签,把链接作为无序列表(unordered list)来标示。
一眼看上去,对导航条使用无序列表似乎是不符合直观感受的,因为我们习惯于把无序列表作为一个竖着推起来的列表项目,每个前面都放着一个Bullet。这似乎不符合导航条水平方向的习惯。
但是,作为独立列表项目集合的列表逻辑结构能够适用于导航条里的链接;而CSS的规则让你能够强制取代列表项目缺省的表现形式,以消除Bullet并安排列表项在页面之上而不是之下浮动。
知道了这一点,现在让我们来看看例B,根据无序列表创建CSS样式和XHTML标示的导航条。
下面就是XHTML标示:
以下为引用的内容:
<div id="navbar2">
<ul>
<li><a href="link1.html">Button 1</a></li>
<li><a href="link2.html ">Button 2</a></li>
<li><a href="link3.html ">Button 3</a></li>
</ul>
</div>
本专栏的固定读者可能会认出这个例子是我用在另一个CSS按钮上的同一个标示。这个技巧吸引人的一个地方是,这个标示对所有按钮都是一样的,无论它们是竖着堆成一列放在主体文本的一边,还是水平放在页面顶端的导航条里。
下面是把文字链接列表转换成导航条的CSS代码:
以下为引用的内容:
div#navbar2 {
height: 30px;
width: 100%;
border-top: solid #000 1px;
border-bottom: solid #000 1px;
background-color: #336699;
}
div#navbar2 ul {
margin: 0px;
padding: 0px;
font-family: Arial, Helvetica, sans-serif;
font-size: small;
color: #FFF;
line-height: 30px;
white-space: nowrap;
}
div#navbar2 li {
list-style-type: none;
display: inline;
}
div#navbar2 li a {
text-decoration: none;
padding: 7px 10px;
color: #FFF;
}
div#navbar2 lia:link {
color: #FFF:
}
div#navbar2 lia:visited {
color: #CCC;
}
div#navbar2 lia:hover {
font-weight: bold;
color: #FFF;
background-color: #3366FF;
}
- 相关链接:
- 教程说明:
Web标准教程-创建一个纯CSS的水平导航条。