1  /  1  页   1 跳转 查看:739

用CSS制作横向菜单

用CSS制作横向菜单



引用:
附件上传下载到本地观看

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>用CSS制作横向菜单</TITLE>
<META http-equiv=Content-Type c>
<STYLE type=text/css>.laohu UL {
LIST-STYLE-TYPE: none
}
.laohu LI {
BACKGROUND: #ccc; FLOAT: left; MARGIN: 1px; WIDTH: 100px; LINE-HEIGHT: 30px
}
.laohu A {
DISPLAY: block; COLOR: #003366; HEIGHT: 30px; TEXT-ALIGN: center
}
.laohu A:link {
BACKGROUND: #fff8dc; MARGIN: 1px; COLOR: #666; TEXT-DECORATION: none
}
.laohu A:visited {
BACKGROUND: #fff8dc; MARGIN: 1px; COLOR: #666; TEXT-DECORATION: none
}
.laohu A:hover {
FONT-WEIGHT: bold; BACKGROUND: #f00 no-repeat 5px 12px; MARGIN: 1px; COLOR: #fff;
TEXT-DECORATION: none
}
</STYLE>
<META c name=GENERATOR></HEAD>
<BODY>
<DIV
style="FONT-SIZE: 12px; MARGIN-LEFT: auto; WIDTH: 750px; MARGIN-RIGHT: auto; TEXT-ALIGN: right"></DIV>
<DIV class=entity>
<H2 class=diaryTitle>如何用CSS制作横向菜单</H2>
<DIV
style="FONT-SIZE: 12px; COLOR: #003388; LINE-HEIGHT: 180%; FONT-FAMILY: 宋体"> 
<BR>
<P>CSS制作菜单的方法.我们先来看一个菜单的例子,最终效果是: </P>
<DIV class=laohu>
<UL>
  <LI><A href="http://www.kycms.com/">首页</A> </LI>
  <LI><A href="http://www.kycms.com/">超级链接</A> </LI>
  <LI><A href="http://www.kycms.com/">超级链接</A> </LI>
  <LI><A href="http://www.kycms.com/">超级链接</A> </LI>
  <LI><A href="http://www.kycms.com/">超级链接</A> </LI>
  <LI><A href="http://www.kycms.com/">超级链接</A> </LI></UL></DIV>
<DIV style="CLEAR: both"></DIV>
<DIV><STRONG>
第一步:建立一个无序列表 </STRONG>代码是:</DIV>
<UL><SPAN class=code><ul><BR><li><a
  href="1">首页</a></li><BR><li><a
  href="2">超级链接</a></li><BR><li><a
  href="3">超级链接</a></li><BR><li><a
  href="4">超级链接</a></li><BR><li><a
  href="5">超级链接</a></li><BR><li><a
  href="6">超级链接</a></li><BR></ul> </SPAN></UL>
<UL>效果是:
  <LI><A href="http://www.kycms.com/">首页</A> 
  <LI><A href="http://www.kycms.com/">超级链接</A>
  <LI><A href="http://www.kycms.com/">超级链接</A>
  <LI><A href="http://www.kycms.com/">超级链接</A>
  <LI><A href="http://www.kycms.com/">超级链接</A>
  <LI><A href="http://www.kycms.com/">超级链接</A> </LI></UL>
<P><STRONG>
第二步:隐藏li的默认样式</STRONG></P>
<P>因为菜单通常都不需要li默认的圆点,我们给UL定义一个样式来消除这些圆点。</P>
<P>当然,为了更好的控制整个菜单,我们把菜单放在一个div里。页面代码变成:</P><SPAN class=code>
<DIV class=test>
<UL><SPAN class=code><div class="test"> <ul><BR><li><a
  href="1">首页</a></li><BR><li><a
  href="2">超级链接</a></li><BR><li><a
  href="3">超级链接</a></li><BR><li><a
  href="4">超级链接</a></li><BR><li><a
  href="5">超级链接</a></li><BR><li><a
  href="6">超级链接</a></li><BR></ul> </div>
</SPAN></UL></DIV></SPAN>
<P>CSS定义为:</P><SPAN class=code>.test ul{list-style:none;} </SPAN>
<P>说明:“.test ul”表示我要定义的样式将作用在test的层里的ul标签上。</P>
<P>现在的效果是没有圆点了:</P>
<DIV class=test2><A href="http://www.kycms.com/">首页</A></DIV>
<DIV class=test2><A href="http://www.kycms.com/">超级链接</A> </DIV>
<DIV class=test2><A href="http://www.kycms.com/3/">超级链接</A> </DIV>
<DIV class=test2><A href="http://www.kycms.com/">超级链接</A> </DIV>
<DIV class=test2><A href="http://www.kycms.com/">超级链接</A></DIV>
<DIV class=test2><A href="http://www.kycms.com/6/">超级链接</A> </DIV>
<DIV class=test2></DIV>
<DIV class=test2><STRONG>
第三步:关键的浮动</STRONG></DIV>
<P>这里是菜单变成横向的关键,我们给li元素加上一个“float:left;”属性,让每个li浮动在前面一个li的左面。</P
>
<P>CSS定义为:</P><SPAN class=code>.test li{float:left;} </SPAN>
<P>效果是:</P>
<DIV class=test3><A href="http://www.kycms.com/">首页</A><A
href="http://www.kycms.com/">超级链接</A><A href="http://www.kycms.com/">超级链接</A><A
href="http://www.kycms.com/">超级链接</A><A href="http://www.kycms.com/">山水天下</A><A
href="http://www.kycms.com/">超级链接</A> </DIV>
<DIV style="CLEAR: both"></DIV>
<P>看,菜单变横向了。就这么简单!下面需要做的就是优化细节了。</P>
<P><STRONG>
第四步:调整宽度</STRONG></P>
<P>菜单都挤在一起不好看怎么办?我们来调节li的宽度。</P>
<P>在CSS中添加定义width:100px指定一个li的宽度是100px,当然你可以根据你的需要调整数值:</P>.test
li{float:left;width:100px;}
<P>效果是:</P>
<P class=test4><A
href="http://www.kycms.com/">首页</A>      <A
href="http://www.kycms.com/">超级链接</A>      <A
href="http://www.kycms.com/">超级链接</A>    <A
href="http://www.kycms.com/">超级链接</A>    <A
href="http://www.kycms.com/">超级链接</A>    <A
href="http://www.kycms.com/">超级链接</A> </P>
<DIV style="CLEAR: both"></DIV>
<P>如果我们同时定义外面div的宽度,li就会根据div的宽度自动换行,例如定义了div宽350px,6个li的总宽度是600px
,一行排不下就自动变成两行:</P>.test{width:350px;}
<P>效果是:</P>
<P class=test5><A
href="http://www.kycms.com/">首页</A>      <A
href="http://www.kycms.com/">超级链接</A>      <A
href="http://www.kycms.com/">超级链接</A> </P>
<P class=test5><A
href="http://www.w3cn.org/article/tips/2005/4">超级链接</A>     
<A href="http://www.kycms.com/">超级链接</A>      <A
href="http://www.kycms.com/">超级链接</A> </P>
<P class=test5><STRONG>
第五步:设置基本链接效果</STRONG></P>
<P>接下来,我们通过CSS来设置链接的样式,分别定义:link、:visited、:hover的状态</P><SPAN class=code>.test
a:link{color:#666;background:#CCC;text-decoration:none;}<BR>.test
a:visited{color:#666;text-decoration:underline;}<BR>.test a:hover{color:#FFF;
font-weight:bold;text-decoration:underline;background:#F00;}<BR></SPAN>
<P><STRONG>
第六步:将链接以块级元素显示</STRONG></P>
<DIV style="CLEAR: both"></DIV>
<P>有朋友问,菜单链接的背景色为什么没有填满整个li的宽度?恩,解决的方法很简单,在a的样式定义中增加display
:block,使链接以块级元素显示。</P>
<P>同时我们微调了如下细节:</P>
<UL>
  <LI>用text-align:center将菜单文字居中;
  <LI>用height:30px增加背景的高度;
  <LI>用margin-left:3px使每个菜单之间空3px距离;
  <LI>用line-height:30px;定义行高,使链接文字纵向居中; </LI></UL>
<P>CSS定义象这样:</P><SPAN class=code>.test
a{display:block;text-align:center;height:30px;}<BR>.test
li{float:left;width:100px;background:#CCC;margin-left:3px;line-height:30px;}
</SPAN>
<P>效果变成:</P>
<DIV class=laohu>
<UL>
  <LI><A href="http://www.kycms.com/">首页</A> </LI>
  <LI><A href="http://www.kycms.com/">超级链接</A> </LI>
  <LI><A href="http://www.kycms.com/">超级链接</A> </LI>
  <LI><A href="http://www.kycms.com/">超级链接</A> </LI>
  <LI><A href="http://www.kycms.com/">超级链接</A> </LI>
  <LI><A href="http://www.kycms.com/6/">超级链接</A> </LI></UL></DIV>
<DIV style="CLEAR: both"></DIV>
<P>这样就漂亮多了吧。</P>
<P><STRONG>现在css的完整代码是:</STRONG></P><SPAN class=code>.test
ul{list-style:none;}<BR>.test
li{float:left;width:100px;background:#CCC;margin-left:3px;line-height:30px;}<BR>.test
a{display:block;text-align:center;height:30px;}<BR>.test
a:link{color:#666;background: #CCC no-repeat 5px
12px;text-decoration:none;}<BR>.test
a:visited{color:#666;text-decoration:underline;}<BR>.test a:hover{color:#FFF;
font-weight:bold;text-decoration:none;background:url(arrow_on.gif) #F00
no-repeat 5px 12px;} </SPAN>
<P><STRONG>页面的完整代码是:</STRONG></P>
<DIV class=laohu><SPAN class=code><div
class="test"><BR><ul><BR><li><a
href="1">首页</a></li><BR><li><a
href="2">超级链接</a></li><BR><li><a
href="3">超级链接</a></li><BR><li><a
href="4">超级链接</a></li><BR><li><a
href="5">超级链接</a></li><BR><li><a
href="6">超级链接</a></li><BR></ul><BR></div>
</SPAN></DIV>
<P>好了,主要步骤就是这7步,立刻拷贝和修改代码试试,你也可以用CSS做横向菜单了!</P></DIV></DIV></BODY></H
TML>

附件附件:

您所在的用户组无法下载或查看附件

最后编辑kyvip 最后编辑于 2007-12-01 11:48:58
 

回复:用CSS制作横向菜单

不错,不是很熟悉div css的用户可以学习学习.
我就是乖宝宝,酷源CMS的发展离不开大家的共同努力,承接定制项目. 有任何使用问题都请随时联系我,免费为您解答各种疑难杂症.
 

回复:用CSS制作横向菜单

顶一下
KYCMS.凝聚自由之源,让你随心所遇
 
  更多详情尽在http://www.xy987.net 
 
1  /  1  页   1 跳转

版权所有 酷源CMS政府信息公开系统 | 酷源子网站集群系统 | 远程发布系统   Sitemap

Powered by Discuz!NT 2.1.202    Copyright © 2001-2008 Comsenz Inc. 蜀ICP备07500489号
返顶部