求助div+css高手,谢!!!

html-css015

求助div+css高手,谢!!!,第1张

<!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>

<title>runcode</title>

<meta http-equiv="Content-Type" content="text/htmlcharset=utf-8" />

<meta name="Author" content="Sheneyan" />

<script type="text/javascript">

var lastFaqClick=null//上次点击的faq

window.onload=function(){

var faq=document.getElementById("faq")

var dls=faq.getElementsByTagName("dl")

for (var i=0,dldl=dls[i]i++){

var dt=dl.getElementsByTagName("dt")[0]//取得标题

dt.id = "faq_dt_"+(Math.random()*100)

dt.onclick=function(){

var p=this.parentNode//取得父节点

if (lastFaqClick!=null&&lastFaqClick.id!=this.id){

var dds=lastFaqClick.parentNode.getElementsByTagName("dd")

for (var i=0,dddd=dds[i]i++)

dd.style.display='none'

}

lastFaqClick=this

var dds=p.getElementsByTagName("dd")//取得该父节点所有的子节点,也就是所有的答案

var tmpDisplay='none'

if (gs(dds[0],'display')=='none')

tmpDisplay='block'

for (var i=0i<dds.lengthi++)

dds[i].style.display=tmpDisplay

}

}

}

/**

*取得元素的真实css属性

*written in 06.7 sheneyan

*/

function gs(d,a){

if (d.currentStyle){

var curVal=d.currentStyle[a]

}else{

var curVal=document.defaultView.getComputedStyle(d, null)[a]

}

return curVal

}

</script>

<style type="text/css">

*,html,body{margin:0padding:0}

#faq dt{font-weight:boldcursor:pointer}

#faq dd{display:none}

</style>

</head>

<body>

<ul id="faq">

<li>

<dl><dt>问题1 </dt><dd>答:1 </dd></dl>

</li>

<li>

<dl><dt>问题2 </dt><dd>答:2 </dd></dl>

</li>

<li>

<dl><dt>问题3 </dt><dd>答:3 </dd></dl>

</li>

<li>

<dl><dt>问题4 </dt><dd>答:4 </dd></dl>

</li>

</li>

</ul>

</body>

</html>

做这东西其实不用那么复杂的,还用到了JS来控制,其实直接通过CSS的代码就可以实现你想要的效果了!你只要设置好ul li dl dt 他们的初始状态和鼠标经过的状态这两个事件就可以的 。