当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > CSS实例:精简代码的兼容各浏览器的滑动门

CSS样式表
网页表单在浏览器的表现实例
符合WEB标准的网页图像的代码精简
清除浮动clear:both的应用详解
WEB标准教程:功能丰富的段落P标签
针对class、id所做的CSS HACK
WEB标准教程:链接和文本标签的应用
看看网页高手怎么理解Web标准
WEB标准教程:P标签的应用
从腾讯网站首页改版学到的几点体会心得
解决网站防挂IFRAME木马的原理
Web标准:关于web标准的一些初学的知识
CSS实例:让页脚保持在未满屏页面的底部
CSS教程:弄懂闭合浮动元素
CSS教程:关于H1的使用技巧
css网页设计非常有用的解决办法
CSS高级技巧:网页布局
CSS实例:三列等高布局
Web标准前途是否依赖浏览器技术
Web标准:文档类型和网页浏览器
WEB标准学习经验总结

CSS样式表 中的 CSS实例:精简代码的兼容各浏览器的滑动门


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 33 ::
收藏到网摘: n/a

截图中效果就是 css滑动门效果,css+div滑动门效果在网页上非常常见,应用范围很广泛,可以减少网页空间的占用,把相同的类别可以归类到一起,用CSS滑动门而实现效果。网上很多CSS+JS滑动门效果都不是很好, 要么太固定了,要么就是内容里面不能再插入DIV标签。这个版本是同事帮我改进的,用起来非常方便。


css+div滑动门效果 (预览页面有两个例子,一个是点击触发事件,一个是鼠标滑过实现效果,onclick 和onmouseover 不同)


[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

JS主要的是获取你鼠标点击后,控制该隐藏或该显示的对应层。这样就实现了滑动门效果。
css+div滑动门效果全部代码如下:
<!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=gb2312" />
<style type="text/css">
    *{margin:0;padding:0;}
    body{margin:50px;font-size:12px;color:#666;}
    li{list-style:none;}
    div{width:210px;}
    #tab1 ,#tab2{width:398px;height:34px;border:1px #cfedff solid;border-bottom:0;background:url(images/title.gif) repeat-x;}
    #tab1 ul ,#tab2 ul{margin:0;padding:0;}
    #tab1 li,#tab2 li{float:left;padding:0 30px;height:34px;line-height:34px;text-align:center;border-right:1px #ebf7ff solid;cursor:pointer;}
    #tab1 li.now,#tab2 li.now{color:#5299c4;background:#fff;font-weight:bold;}
    .tablist{width:378px;height:100px;padding:10px;font-size:14px;line-height:24px;border:1px #cfedff solid;border-top:0;display:none;}
    .block{display:block; }
   
</style>
<script type="text/javascript">

function setTab(m,n){
    var menu=document.getElementById("tab"+m).getElementsByTagName("li"); 
    var div=document.getElementById("tablist"+m).getElementsByTagName("div");
   
    var showdiv=[];
    for (i=0; j=div[i]; i++){
      if ((" "+div[i].className+" ").indexOf(" tablist ")!=-1){
       showdiv.push(div[i]);
      }
    }
    for(i=0;i<menu.length;i++)
    {
        menu[i].className=i==n?"now":"";
        showdiv[i].style.display=i==n?"block":"none"; 
    }
}
</script>
<title>CSS中的滑动门效果_365CSS.CN</title>
</head>
<body>
 <div id="tab1">
        <ul>
            <li onmouseover="setTab(1,0)" class="now">第一行</li>
            <li onmouseover="setTab(1,1)">第二行</li>
            <li onmouseover="setTab(1,2)">第三行</li>
            <li onmouseover="setTab(1,3)">第四行</li>
        </ul>
 </div>
    <div id="tablist1">
        <div class="tablist block">
            <span><div>第一行</div></span>
        </div>
        <div class="tablist">
           <span>第二行 </span>
        </div>
        <div class="tablist">
         <span>第三行 </span>
        </div>
        <div class="tablist">
         <span>第四行</span>
        </div>
    </div>
   
   
   
    <br /><br /><br />
    <div id="tab2">
        <ul>
            <li onclick="setTab(2,0)" class="now">第一行</li>
            <li onclick="setTab(2,1)">第二行</li>
            <li onclick="setTab(2,2)">第三行</li>
          
        </ul>
    </div>
    <div id="tablist2">
        <div class="tablist block">
        第一行信息
        </div>
        <div class="tablist">
        <span>第二行</span>
        </div>
        <div class="tablist">
        <span>第三行</span>
        </div>
      
    </div>
</body>
</html>