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

CSS样式表
用css实现图片垂直居中的使用技巧
CSS List Grid Layout 图片垂直居中
IE6网页神奇BUG
Marquee高级用法实例代码
web标准知识——从p开始,循序渐进
web标准知识——用途相似的标签
html链接与文本标签们
当标题不能显示完整的解决方法
详解链接的rel与target区别
使css兼容IE8的小技巧
CSS 首字母大写代码
CSSvista可同时在IE和Fifrefox调试的CSS编辑提供下载
css font缩写总结附实例
css下margin、padding、border、background和font缩写示例
用CSS来控制图片显示大小的代码
css下划线颜色一句话代码
css常见问题解决方法小结
relative absolute无法冲破的等级问题解决
div总是被select遮挡的解决方法
CSS文字截取功能实现代码

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 104 ::
收藏到网摘: 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>