- 浏览: 133684 次
- 性别:
- 来自: 济南
文章分类
最新评论
-
ysw909:
你好 请问一下 能画大卫三角形么
感觉不太好画,坐标点不好找 ...
Raphael学习笔记(1)--简介 -
damoqiongqiu:
还缺了一个步骤,需要在spring.xml里面配置一个bean ...
Spring容器启动后自动执行Servlet进行预处理 -
moment52:
<div class="quote_title ...
spring启动后,立即执行需要的操作 -
moment52:
ServletContextAware是spring的还是st ...
spring启动后,立即执行需要的操作 -
nikoloss:
请问这么为这个raphael_4.text这个字上面设置事件? ...
Raphael学习笔记(5)--绘图(路径【椭圆曲线】)
最近公司要对已有的产品进行升级,希望改变一下导航菜单的展现方式。于是,在网上搜索了一下,感觉带箭头的导航菜单方式不错,于是就模仿着写了一个,其实很简单。不废话了,看代码。
<!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" xml:lang="en" lang="en"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <script type="text/javascript" src="jquery.js"></script> <title>Menu</title> <style type="text/css"> ul, li { list-style-type:none; padding:0; margin:0; } #menu { border:1px solid #dedede; height:35px; background:url(bg_out.gif) repeat-x; } #menu li { float:left; line-height:35px; padding-left: 10px; padding-right: 15px; } #menu li div { height: 100%; width: 100%; } .li_out { background:url(arrow_out.gif) no-repeat right center; } .li_over { cursor:hand; background:url(arrow_over.gif) no-repeat right center; color:white; } .div_over { background: url(bg_over.gif) repeat-x; margin-left: -10px; padding-left: 10px; } </style> <script type="text/javascript"> $(document).ready(function(){ $("#menu").children("li").hover( function(){ $(this).addClass("li_over"); $(this).children("div").addClass("div_over"); }, function(){ $(this).removeClass("li_over"); $(this).children("div").removeClass("div_over"); } ); }); </script> </head> <body> <ul id="menu"> <li class="li_out"><div>Home</div></li> <li class="li_out"><div>Equipment File</div></li> <li class="li_out"><div>Sparepart Account</div></li> <li class="li_out"><div>Maintenance Management</div></li> <li class="li_out"><div>System</div></li> </ul> </body> </html>
效果显示如下:
附件中是整个实现的代码。
2011-01-08修改:
今天和同事交流了一下,发现了更好的实现效果。感谢同事marker提出的建议和改进的帮助。
箭头样式导航菜单2.rar是marker提供的实现效果(注意,菜单栏在浏览器中是右对齐的),如图
箭头样式导航菜单3.rar是我改进后的另一种实现效果(注意,菜单栏在浏览器中是左对齐的),如图
大家给看看,是否还有bug没有测试到?欢迎指出,在此先谢谢!
- 箭头样式的导航菜单.rar (24.7 KB)
- 下载次数: 590
- 箭头样式导航菜单2.rar (25.9 KB)
- 下载次数: 564
- 箭头样式导航菜单3.rar (25.7 KB)
- 下载次数: 834
评论
18 楼
mr_sunq
2011-02-22
firemmet 写道
仔细看下效果,通过现象看本质,问题并没有上边的那么复杂,箭头的方向是一致的,鼠标经过的样式也比较固定,背景为纯色。在现在的前提下没必要搬出大车轮子来用,无非是一些末端的遮盖,简单的css即可实现以上的需求。如下:
这是第一种效果的实现,第二种的效果也不难,html结构同第一种的,仅需要稍微调整下css即可了,如下:
上传下背景图片,
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8"> <title>meun</title> <style type="text/css"> html, body, div{ margin: 0; padding: 0; } .menu{ float: left; padding: 0 20px 0 0; _padding: 0 29px 0 0; background: #D2D2D2; font-size: 0; } .menu a{ display: inline-block; height: 32px; padding: 0 9px 0 0; background: url(bg.png) no-repeat right 0; color: #333; font-size: 12px; line-height: 32px; text-decoration: none; } .menu a span{ display: block; padding: 0 10px 0 15px; } .menu a:hover{ background: url(bg.png) no-repeat right -35px; color: #FFF; } .menu a:hover span{ background: #888; } </style> </head> <body> <div class="menu"> <a class="home" href="#"><span>HOME</span></a> <a href="#"><span>NEWS1</span></a> <a href="#"><span>NEWS2</span></a> <a href="#"><span>NEWS3</span></a> <a href="#"><span>NEWS4</span></a> <a href="#"><span>NEWS5</span></a> </div> </body> </html>
这是第一种效果的实现,第二种的效果也不难,html结构同第一种的,仅需要稍微调整下css即可了,如下:
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8"> <title>menu</title> <style type="text/css"> html, body, div{ margin: 0; padding: 0; } .menu{ float: left; padding: 0 20px 0 0; _padding: 0 29px 0 0; background: #D2D2D2; font-size: 0; } .menu a{ display: inline-block; height: 32px; margin: 0 -9px 0 0; padding: 0 9px 0 0; background: url(bg.png) no-repeat right 0; color: #333; font-size: 12px; line-height: 32px; text-decoration: none; } .menu a span{ display: block; padding: 0 10px 0 20px; } .menu a:hover{ background: url(bg.png) no-repeat right -35px; color: #FFF; } .menu a:hover span{ background: #888 url(bg.png) no-repeat left 0; } .menu a.home:hover span{ background: #888; } </style> </head> <body> <div class="menu"> <a class="home" href="#"><span>HOME</span></a> <a href="#"><span>NEWS1</span></a> <a href="#"><span>NEWS2</span></a> <a href="#"><span>NEWS3</span></a> <a href="#"><span>NEWS4</span></a> <a href="#"><span>NEWS5</span></a> </div> </body> </html>
上传下背景图片,
span里面放上中文以后,菜单显示就会乱码,在firefox、ie浏览器上均如此
17 楼
lib
2011-01-17
<div class="quote_title">binlaniua 写道</div>
<div class="quote_div">直接用边框对压不就可以了吗....</div>
<p> </p>
<p>能否共享一下代码?</p>
<div class="quote_div">直接用边框对压不就可以了吗....</div>
<p> </p>
<p>能否共享一下代码?</p>
16 楼
binlaniua
2011-01-15
直接用边框对压不就可以了吗....
15 楼
lxs647
2011-01-13
都是高手啊O(∩_∩)O~
14 楼
jorneyR
2011-01-12
<div class="quote_title">lib 写道</div>
<div class="quote_div">
<div class="quote_title">jorneyR 写道</div>
<div class="quote_div">不知道你在没有在Opera上测试过,Opera中对padding的处理总是常出问题</div>
<p> </p>
<p>在Opera上测试过,确实还有一点bug。当第一次将鼠标移动到一个题目上时,没有任何效果,并且左右两侧的箭头消失了。</p>
<p> </p>
<p>哎!头疼,费了半天劲没有解决!<img src="/images/smiles/icon_redface.gif" alt=""></p>
</div>
<p>嘿嘿,IE蛋疼,Opera也好不到哪去,Opera最大的优势是在老爷机上速度超级快。</p>
<div class="quote_div">
<div class="quote_title">jorneyR 写道</div>
<div class="quote_div">不知道你在没有在Opera上测试过,Opera中对padding的处理总是常出问题</div>
<p> </p>
<p>在Opera上测试过,确实还有一点bug。当第一次将鼠标移动到一个题目上时,没有任何效果,并且左右两侧的箭头消失了。</p>
<p> </p>
<p>哎!头疼,费了半天劲没有解决!<img src="/images/smiles/icon_redface.gif" alt=""></p>
</div>
<p>嘿嘿,IE蛋疼,Opera也好不到哪去,Opera最大的优势是在老爷机上速度超级快。</p>
13 楼
spsmysp
2011-01-12
好及时啊~项目当中正好要用到~
谢谢
谢谢
12 楼
Sehoney
2011-01-12
<p><span style="font-size: small;">我想做到的效果是点击后的效果(附件)<br>现在这个是移动上去的效果</span></p>
<p><span style="font-size: small;">高手看下吧(对你们来说肯定再简单不过了)<img src="/images/smiles/icon_biggrin.gif" alt=""></span></p>
<p> </p>
<p><span style="font-size: small;">高手看下吧(对你们来说肯定再简单不过了)<img src="/images/smiles/icon_biggrin.gif" alt=""></span></p>
<p> </p>
11 楼
interjc
2011-01-11
firemmet 写道
仔细看下效果,通过现象看本质,问题并没有上边的那么复杂,箭头的方向是一致的,鼠标经过的样式也比较固定,背景为纯色。在现在的前提下没必要搬出大车轮子来用,无非是一些末端的遮盖,简单的css即可实现以上的需求。如下:
......
......
down下来看了下确实不错,不过jquery是现在做web的标配吧,有得用就用嘛,也不损失什么,呵呵~
10 楼
keete
2011-01-11
学习了。。以后有机会一定要用上
9 楼
firemmet
2011-01-11
仔细看下效果,通过现象看本质,问题并没有上边的那么复杂,箭头的方向是一致的,鼠标经过的样式也比较固定,背景为纯色。在现在的前提下没必要搬出大车轮子来用,无非是一些末端的遮盖,简单的css即可实现以上的需求。如下:
这是第一种效果的实现,第二种的效果也不难,html结构同第一种的,仅需要稍微调整下css即可了,如下:
上传下背景图片,
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8"> <title>meun</title> <style type="text/css"> html, body, div{ margin: 0; padding: 0; } .menu{ float: left; padding: 0 20px 0 0; _padding: 0 29px 0 0; background: #D2D2D2; font-size: 0; } .menu a{ display: inline-block; height: 32px; padding: 0 9px 0 0; background: url(bg.png) no-repeat right 0; color: #333; font-size: 12px; line-height: 32px; text-decoration: none; } .menu a span{ display: block; padding: 0 10px 0 15px; } .menu a:hover{ background: url(bg.png) no-repeat right -35px; color: #FFF; } .menu a:hover span{ background: #888; } </style> </head> <body> <div class="menu"> <a class="home" href="#"><span>HOME</span></a> <a href="#"><span>NEWS1</span></a> <a href="#"><span>NEWS2</span></a> <a href="#"><span>NEWS3</span></a> <a href="#"><span>NEWS4</span></a> <a href="#"><span>NEWS5</span></a> </div> </body> </html>
这是第一种效果的实现,第二种的效果也不难,html结构同第一种的,仅需要稍微调整下css即可了,如下:
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8"> <title>menu</title> <style type="text/css"> html, body, div{ margin: 0; padding: 0; } .menu{ float: left; padding: 0 20px 0 0; _padding: 0 29px 0 0; background: #D2D2D2; font-size: 0; } .menu a{ display: inline-block; height: 32px; margin: 0 -9px 0 0; padding: 0 9px 0 0; background: url(bg.png) no-repeat right 0; color: #333; font-size: 12px; line-height: 32px; text-decoration: none; } .menu a span{ display: block; padding: 0 10px 0 20px; } .menu a:hover{ background: url(bg.png) no-repeat right -35px; color: #FFF; } .menu a:hover span{ background: #888 url(bg.png) no-repeat left 0; } .menu a.home:hover span{ background: #888; } </style> </head> <body> <div class="menu"> <a class="home" href="#"><span>HOME</span></a> <a href="#"><span>NEWS1</span></a> <a href="#"><span>NEWS2</span></a> <a href="#"><span>NEWS3</span></a> <a href="#"><span>NEWS4</span></a> <a href="#"><span>NEWS5</span></a> </div> </body> </html>
上传下背景图片,
8 楼
interjc
2011-01-11
把LZ的代码改了一下,图片也换了一下,呵呵~
确实是挺好玩的~
确实是挺好玩的~
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <script type="text/javascript" src="jquery.js"></script> <title>Menu</title> <style type="text/css"> *{ margin:0; padding:0;} #menu{ clear:both; height:1%; overflow:hidden; margin:50px; list-style:none; background:#d2d2d2; } #menu li { float:left; line-height:30px; overflow:hidden; display:inline; } #menu li a{ text-decoration:none; float:left; display:inline; padding:0 5px; } #menu li a:hover{ background:url(bg_over.gif) repeat-x left center; } #menu li.separator{ width:8px; height:30px; padding:0; } #menu li.separator a, #menu li.separator a:hover{ background:url(arrow_out.gif) no-repeat right center; height:30px; width:8px; padding:0; } #menu li.hover-before a, #menu li.hover-before a:hover{ background-image:url(arrow_next_over.gif); } #menu li.hover-after a, #menu li.hover-after a:hover{ background-image:url(arrow_over.gif); } </style> <script type="text/javascript"> jQuery(function($){ var objMenu = $('#menu'); $('li', objMenu) .after('<li class="separator"><a href="#"> </a></li>') .hover(function(){ var self = $(this); $('.separator').removeClass('hover-before hover-after'); self.prev('.separator').addClass('hover-before'); self.next('.separator').addClass('hover-after'); },function(){ var self = $(this); self.prev('.separator').removeClass('hover-before'); self.next('.separator').removeClass('hover-after'); }); }); </script> </head> <body> <div> <div id="menu-content"> <ul id="menu"> <li><a href="#">System</a></li> <li><a href="#">Maintenance Management</a></li> <li><a href="#">Sparepart Account</a></li> <li><a href="#">Equipment File</a></li> <li><a href="#">Home</a></li> </ul> </div> </div> </body> </html>
7 楼
lib
2011-01-11
<div class="quote_title">jorneyR 写道</div>
<div class="quote_div">不知道你在没有在Opera上测试过,Opera中对padding的处理总是常出问题</div>
<p> </p>
<p>在Opera上测试过,确实还有一点bug。当第一次将鼠标移动到一个题目上时,没有任何效果,并且左右两侧的箭头消失了。</p>
<p> </p>
<p>哎!头疼,费了半天劲没有解决!<img src="/images/smiles/icon_redface.gif" alt=""></p>
<div class="quote_div">不知道你在没有在Opera上测试过,Opera中对padding的处理总是常出问题</div>
<p> </p>
<p>在Opera上测试过,确实还有一点bug。当第一次将鼠标移动到一个题目上时,没有任何效果,并且左右两侧的箭头消失了。</p>
<p> </p>
<p>哎!头疼,费了半天劲没有解决!<img src="/images/smiles/icon_redface.gif" alt=""></p>
6 楼
lib
2011-01-11
<div class="quote_title">rainsilence 写道</div>
<div class="quote_div">mouseover,一共改变三张图片,很简单的思路啊</div>
<p> </p>
<p>实现起来确实很简单,重点不是mouseover,而是padding和margin与background的组合使用。</p>
<div class="quote_div">mouseover,一共改变三张图片,很简单的思路啊</div>
<p> </p>
<p>实现起来确实很简单,重点不是mouseover,而是padding和margin与background的组合使用。</p>
5 楼
rainsilence
2011-01-11
mouseover,一共改变三张图片,很简单的思路啊
4 楼
jorneyR
2011-01-10
不知道你在没有在Opera上测试过,Opera中对padding的处理总是常出问题
3 楼
blackbirdcc
2011-01-10
很实用,与传统别具一格
2 楼
ligg5034
2011-01-10
不错 很好的效果 谢谢分享!
1 楼
Javakeith
2011-01-08
我找样的东西好久了!
发表评论
-
使用CSS绘制基本图形
2012-03-31 15:12 2571你懂得,不解释,直接上代码。 <!DOC ... -
JavaScript的作用域(学习笔记三)
2011-04-08 14:22 968还是先上一段代码,思考一下执行的结果。 <scr ... -
JavaScript的作用域(学习笔记二)
2011-04-08 13:45 990看看下面代码的执行结果: <script> ... -
JavaScript的作用域(学习笔记一)
2011-04-08 10:36 867<script> var ... -
CheckBox级联选择
2009-07-17 08:06 4636最近做项目时,需要用到CheckBox的级联选择,于是自己动手 ...
相关推荐
css3箭头菜单效果
css3箭头菜单效果.zip
利用CSS :AFTER :BEFORE selector实现菜单带箭头效果
CSS jQuery共同实现的一款带动画效果的菜单,菜单上的箭头会翻转的动画二级下拉菜单,风格十分简洁,几乎没有使用图片美化。菜单颜色若要修改,可直接修改CSs代码即可。菜单动画效果的实现主要是引入了jquery插件来...
一款十分独特个性的js+css3曲线循环菜单滚动切换特效,通过箭头按钮控制图片和导航菜单上下滚动切换。
这是一款使用纯CSS3制作的带下划线跟随效果的下拉菜单特效。该下拉菜单通过CSS3 transform和transition来制作下划线跟随效果和下拉菜单效果。
之前我们介绍过一些基于jQuery和CSS3的气泡提示框,大家可以看看CSS气泡提示框 可自定义配置箭头。今天要给大家带来另外一款基于CSS3的文字菜单鼠标悬停气泡提示动画,它比较适合用在文字菜单上,当鼠标滑过菜单项时...
带小箭头的大型滑出导航菜单,纯CSS实现,只是没有使用JS,图片当然要用哦!也有种下拉菜单的感觉,这种大型菜单在联想、Dell、佳能等官方网站看到过,可以对某一产品进行详细的分类导航,让用户在网站首就可轻易...
jQuery制作垂直箭头菜单.zip
一个简单的导航菜单插件,结合html5+css3技术实现,效果还过得去。
CSS jquery 适合宽屏网站使用的二级下拉菜单
纯javascript写的伸缩的两级菜单,并加有CSS样式,当鼠标点击的下拉菜单时弹出二组菜单。
今天我们要给大家分享一款超清新的CSS3带小图标垂直手风琴菜单,这款手风琴菜单的特点是菜单项带有小图标,而且如果存在二级菜单,该菜单项右侧则有箭头符号表示。菜单项展开时,其他菜单项同时会隐藏。这款CSS3手...
面包屑菜单一般贯穿整个网站,可以很清晰地描述访客的当前层级目录,让用户更清楚地了解网站各个频道之间的关系。这款CSS3面包屑菜单十分精巧,它采用了扁平化设计,让...该CSS3面包屑菜单的箭头也是用纯CSS3代码实现。
jquery带箭头下拉菜单.zip
本文实例讲述了基于CSS实现带阴影和小箭头的黑色风格下拉菜单效果。分享给大家供大家参考。具体如下: 这是一款黑色风格的CSS菜单,带阴影和小箭头效果,纯CSS技术实现的,没有借助任何的JavaScript代码,风格非常...
CSS3垂直手风琴折叠菜单,这款CSS3手风琴菜单的每一个菜单项都有小图标,而且只能有一项展开,更有意思的是,在菜单折叠和展开式右侧的箭头也会有不错的动画效果。
HTML5 CSS3 仿安卓手机DockMenu动态导航菜单,鼠标放上后,菜单会向上轻微滑动,默认状态下,打开网页后,菜单隐藏在小箭头中,在电脑上用鼠标单击小箭头即可向上滑出整体的菜单,在手机上是轻触箭头即可滑出菜单,...
很多分类信息网站用step menu菜单来提示用户按步骤输入。如58同城的广告,这里在QT里用一个简单办法来实现这种效果