html导航下拉菜单页面不动,DEDECMS的JS+CSS导航条下拉菜单(完美解决)

使用DEDECMS做网站的时候,有时候需要制作下拉菜单。dede5.5有下拉菜单,比较不错,有需要的可以直接到5.5的模板里面去借鉴。这里我分享一下个人的DEDECMS制作js+css下拉菜单的经验,此菜单兼容5.5到5.7版本的dedeCMS。

DEDECMS导航下拉菜单的调用DEDECMS下拉菜单实际上就是顶级栏目和每个栏目的子栏目的一个循环调用,我使用了以下代码,实现了这种调用。

{dede:channelartlist typeid='top'}

{dede:type} [field:typename/]{/dede:type}

{dede:channel type='son'}

[field:typename/]

{/dede:channel}

{/dede:channelartlist}

这种调用方法无法实现当前页效果,如果要实现当前页效果,请参考dedecms官方的下拉菜单制作方法。

比较重要的CSS样式这里比较重要的是注意CSS的应用,以下是该菜单完整的CSS代码。如果需要其他效果,请自行修改。

/* mainnav */

#mainnav {

background:#002a6c;

border:1px solid #0f2851;

border-top:none;

padding-left:20px;

width:878px;

height:30px;

position:relative;

clear:both;

}

#mainnav li {

float:left;

width:95px;

position:relative;

}

#mainnav li ul {

position: absolute;

left: 0px;

top: 30px;

display: none;

background:#133b7c;

z-index:1000;

}

#mainnav li a {

display: block;

font:bold 14px/30px "微软雅黑";

text-align:center;

text-decoration: none;

color:#fff;

}

#mainnav li a:hover, #mainnav li.on a {

text-decoration:none;

color:#fff;

background:#133b7c;

}

#mainnav li ul li a {

font-weight:normal;

width:150px;

text-align:left;

padding-left:25px;

line-height:25px;

font-size:12px;

color:#9cf;

background:#133b7c;

}

#mainnav li ul li a:hover { color: #9cf; background:#012a6c }

* html #mainnav li {

float: left;

height: 1%;

}

* html #mainnav li a { height: 1%; }

#mainnav li:hover ul, #mainnav li.over ul { display: block; }

实现下拉菜单效果的js本来打算使用纯CSS来解决下拉菜单问题,奈何垃圾IE6依然有着顽强的生命力,为了它去浪费时间做兼容,实在是耗时耗力。幸好本人没有js洁癖,于是选择了用简单的js来搞定,这里本人使用下面的代码:

startList = function() {

if (document.all && document.getElementById) {

var mainnavRoot = document.getElementById("mainnav");

for (var i = 0; i < mainnavRoot.childNodes.length; i++) {

var node = mainnavRoot.childNodes;

if (node.nodeName == "LI") {

node.onmouseover = function() {

this.className += "over";

}

node.onmouseout = function() {

this.className = this.className.replace("over", "");

}

}

}

}

}

window.onload = startList;

其中要注意的是getElementByid("mainnav")中dmainnav是导航条的ID。

到此,一款效果简洁的JS+CSS下拉菜单就搞定了。样式很粗糙,如果要实现更佳的视觉效果,可以自行修改CSS代码添加背景,或者使用其他的js效果。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值