div+css下拉列表怎么写?

html-css04

div+css下拉列表怎么写?,第1张

用div+css的ul、li结合script脚本实现下拉列表菜单,全部代码如下,复制在DW中预览即可看到效果,细节样式可以自行修改:

<!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/htmlcharset=gb2312" />

<title>DIV+CSS实现下拉列表菜单</title>

<style type="text/css">

<!--

ul {

margin: 0px

padding: 0px

list-style-type: none

}

li{

float:left

width:160px

margin-left:1px

}

ul li a{

display:block

font-size:12px

border:#CCCCCC 1px solid

padding:3px

text-decoration:none

color:#777777

margin-top:1px

text-align:center

}

ul li a:hover{

background-color:#0099CC

color:#FFFFFF

}

li ul{

display:none

top:20px

margin-top:1px

}

li:hover ul,li.over ul{

display:block

}

-->

</style>

</head>

<script type="text/javascript"><!--//--><![cdata]//><!--

startlist = function() {

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

navRoot = document.getElementByIdx("nav")

for (i=0i<navRoot.childNodes.lengthi++) {

node = navRoot.childNodes[i]

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

node.onmouseover=function() {

this.className+=" over"

}

node.onmouseout=function() {

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

}

}

}

}

}

window.onload=startlist

//--><!]]></script>

</script>

<body>

<ul >

<li><a href="">文章</a>

<ul>

<li><a href="">CSS 教程</a></li>

<li><a href="">DOM 教程</a></li>

<li><a href="">XML 教程</a></li>

<li><a href="">Flash 教程</a></li>

</ul>

</li>

<li><a href="">参考</a>

<ul>

<li><a href="">XHTML</a></li>

<li><a href="">XML</a></li>

<li><a href="">CSS</a></li>

</ul>

</li>

<li><a href="">Blog</a>

<ul>

<li><a href="">全部</a></li>

<li><a href="">网页技术</a></li>

<li><a href="">UI 技术</a></li>

<li><a href="">Flash 技术</a></li>

</ul>

</li>

<li><a href="">摇滚</a>

<ul>

<li><a href="">纯音乐</a></li>

<li><a href="">古典金曲</a></li>

<li><a href="">UI 技术</a></li>

<li><a href="">Flash 技术</a></li>

</ul>

</li>

</ul>

</body>

</html>

首先 list-style-image不能设置位置,所以如果要实现你的效果,要把你的项目符号直接做成尺寸刚刚好的,

这样个尺寸大小的,

但是这样限制性太强,所以还是用背景来做比较方便

 background:url("../images/z_zs1.gif") no-repeat 3px 13px

改动里面的px数值,可以上下左右移动背景图标,移动到适合的位置,然后给li增加padding-left属性就行了

只用一个ul控制,用这样的方法,在CSS样式里控制,格式如下,div里设置一个类标记。如,id或class如<div id="biaoji"> <ul> <li></li> <li></li> <li></li> </ul></div><style type="text/css">她的意思是每个ul里面的li加一个小图标,加进去在用padding跟margin修饰。 #biaoji ul li{ background:url(图片路径..) no-repeat }</style>回答不清楚请见谅