我们看看下面的xhtml代码: 复制内容到剪贴板程序代码 程序代码 <div id="nav"> <ul> <li><a href="http://www.52css.com/">HomePage</a></li> <li><a href="http://www.52css.com/">Div+CSS教程</a></li> <li><a href="http://www.52css.com/">CSS布局实例</a></li> <li><a href="http://www.52css.com/">CSS2.0教程 </a></li> <li><a href="http://www.52css.com/">CSS在线手册</a></li> <li><a href="http://www.52css.com/">Web标准</a></li> <li><a href="http://www.52css.com/">XHTML教程</a></li> </ul> </div> 我们再看看关于这段xhtml的CSS代码: 复制内容到剪贴板程序代码 程序代码 #nav { height: 30px; width: 100%; background-color: #c00; } #nav ul { margin: 0 0 0 30px; padding: 0px; font-size: 12px; color: #FFF; line-height: 30px; white-space: nowrap; } #nav li { list-style-type: none; display: inline; } #nav li a { text-decoration: none; font-family: Arial, Helvetica, sans-serif; padding: 7px 10px; color: #FFF; } #nav li a:hover { color: #ff0; background-color: #f00; } 我们来看看上面的代码的运行效果: HTML代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>www.52css.com</title> <style type="text/css"> <!-- #nav { height: 30px; width: 100%; background-color: #c00; } #nav ul { margin: 0 0 0 30px; padding: 0px; font-size: 12px; color: #FFF; line-height: 30px; white-space: nowrap; } #nav li { list-style-type: none; display: inline; } #nav li a { text-decoration: none; font-family: Arial, Helvetica, sans-serif; padding: 7px 10px; color: #FFF; } #nav li a:hover { color: #ff0; background-color: #f00; } --> </style> </head> <body> <div id="nav"> <ul> <li><a href="http://www.52css.com/">HomePage</a></li> <li><a href="http://www.52css.com/">Div+CSS教程</a></li> <li><a href="http://www.52css.com/">CSS布局实例</a></li> <li><a href="http://www.52css.com/">CSS2.0教程 </a></li> <li><a href="http://www.52css.com/">CSS在线手册</a></li> <li><a href="http://www.52css.com/">Web标准</a></li> <li><a href="http://www.52css.com/">XHTML教程</a></li> </ul> </div> </body> </html> [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行] 或许你并不能完全理解这些代码都是什么意义,都用来控制什么,达到什么效果。 下面我们来解析上面的代码: xhtml代码首先定义了一个容器div id="nav"。这个容器用来放置这个无序列表横向导航菜单的内容,但也有人认为这个容器是多余的,直接定义ul id="nav"就可以了。我们不建议你这样做,要知道我们的站点是可扩展的,我们要为将来的扩展留有足够的余地,如果我们的导航样式设计的更加复杂,仅有的ul是不能满足需要的。我们定义这样的容器也更符合我们编写代码的习惯。 #nav定义了窗口的宽高及背景颜色。#nav ul包含有margin和padding声明,字体及颜色声明。line-height: 30px;是非常重要的定义,如果取消掉行高的定义,我们的链接文字垂直居中就可能受到影响。white-space: nowrap;或许大家并不能理解有什么作用,它定义了强制在同一行内显示所有文本,直到文本结束或者遭遇br对象。关于white-space属性可以参考这里。 #nav li中的list-style-type: none;去除了列表项所使用的预设标记。使其更象是纯文本,而没有列表标记。display: inline;声明则能够让列表项目在页面上从左向右浮动,而不会让每个项目显示在单独的行里而从上至下的排列。这两项声明是我们实现无序列表横向导航菜单的关键。 #nav li a和#nav li a:hover定义了链接的样式。其中的内容就不作深入了,唯一要讲的就是:padding: 7px 10px;它是用来控制链接文字之间的空白间隔的,你可以试着改变数值试试看。 至此,无序列表创建css横向导航菜单的工作就结束了。 (责任编辑:laiquliu) |