`
thtwin
  • 浏览: 165833 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

多浏览器兼容的CSS js 的 tab 选项卡

    博客分类:
  • J2SE
阅读更多
<!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" />
<title>CSS tab 选项卡  CSSBBS原创</title>
<style type="text/css">
*{ padding:0px; margin:0px;}
body{ text-align:center;font-size:12px;}
.page{
width:600px;
margin:10px auto;
text-align:left;
}
/*----------------------- 内容模块 */
.tab_mo{
border:1px solid #ccc;
border-top:none;
padding:10px;
}
/*----------------------- 菜单模块 */
.tab{
border-bottom:1px solid #ccc; /* 菜单模块的底部边框,也就是内容模块的上边框 */
list-style:none;
padding:4px 5px 3px 5px;
}
.tab li{
display:inline; /* 【重点】让li横向排列。即使不浮动也会横向排列。可以删除看看效果 */
font-size:12px;
}
.tab li a{
padding:3px 4px; /* 因为没有固定高度,所以用填充来调整显示效果。 */
border:1px solid #ccc;  /* 菜单项的边框 */
color:#888;
border-bottom:none; /* 底部无边框 */
text-decoration:none;
background:#f7f7f7
}
/*----------------------- 鼠标经过时候的菜单样式 */
.tab li a:hover{
background:#fff;
}
/*----------------------- 选中时候的样式 */
.tab li.no a{
background:#fff;
border-bottom:none; /*  隐藏菜单项的底部边框 */
position:relative;  /* 【重点】菜单项里面的连接使用了相对定位 */
top:1px;            /* 【重点】相对于外层顶部为1像素,正好是底部边框的像素。所以就遮住了ul的底部边框 */
color:#000000;
font-weight:bold
}
</style>
<script type="text/javascript">
function tab(a,b,c)
{
for(i=1;i<=b;i++){
if(c==i)
{
// 判断选择模块
document.getElementById(a+"_mo_"+i).style.display = "block";  // 显示模块内容
document.getElementById(a+"_to_"+i).className = "no";   // 改变菜单为选中样式
}
else{
// 没有选择的模块
document.getElementById(a+"_mo_"+i).style.display = "none"; // 隐藏没有选择的模块
document.getElementById(a+"_to_"+i).className = "q";  // 清空没有选择的菜单样式
}
}
}
</script>
</head>

<body>
<div class="page">
<ul class="tab">
<li id="tab_to_1" class="no"><a href="#" onmouseover="tab('tab',4,1)">最新问题</a></li>
<li id="tab_to_2"><a href="#" onmouseover="tab('tab',4,2)">热门资讯</a></li>
<li id="tab_to_3"><a href="#" onmouseover="tab('tab',4,3)">最新回复</a></li>
<li id="tab_to_4"><a href="#" onmouseover="tab('tab',4,4)">CSS论坛</a></li>
</ul>
<div class="tab_mo">
<div id="tab_mo_1">
最新问题最新问题最新问题最新问题最新问题最新问题
</div>
<div id="tab_mo_2" style="display:none">
热门资讯热门资讯热门资讯热门资讯热门资讯热门资讯
</div>
<div id="tab_mo_3" style="display:none">
最新回复最新回复最新回复最新回复最新回复最新回复最新回复
</div>
<div id="tab_mo_4" style="display:none">
<a href="css/'>http://www.cssbbs.com">CSS论坛</a>CSS论坛CSS论坛CSS论坛CSS论坛CSS论坛CSS论坛</div>
</div>
</div>

</body>
</html>

JS的类可以在同一个页面多次调用。只需要改变选项卡的ID名字就可以了。

同页面多tab模块的使用示例;

<!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" />
<title>CSS tab 选项卡  CSSBBS原创</title>
<style type="text/css">
*{ padding:0px; margin:0px;}
body{ text-align:center;font-size:12px;}
.page{
width:600px;
margin:10px auto;
text-align:left;
}

h2{ margin:10px; background:#eee;}
/*----------------------- 内容模块 */
.tab_mo{
border:1px solid #ccc;
border-top:none;
padding:10px;
}
/*----------------------- 菜单模块 */
.tab{
border-bottom:1px solid #ccc; /* 菜单模块的底部边框,也就是内容模块的上边框 */
list-style:none;
padding:4px 5px 3px 5px;
}
.tab li{
display:inline; /* 【重点】让li横向排列。即使不浮动也会横向排列。可以删除看看效果 */
font-size:12px;
}
.tab li a{
padding:3px 4px; /* 因为没有固定高度,所以用填充来调整显示效果。 */
border:1px solid #ccc;  /* 菜单项的边框 */
color:#888;
border-bottom:none; /* 底部无边框 */
text-decoration:none;
background:#f7f7f7
}
/*----------------------- 鼠标经过时候的菜单样式 */
.tab li a:hover{
background:#fff;
}
/*----------------------- 选中时候的样式 */
.tab li.no a{
background:#fff;
border-bottom:none; /*  隐藏菜单项的底部边框 */
position:relative;  /* 【重点】菜单项里面的连接使用了相对定位 */
top:1px;            /* 【重点】相对于外层顶部为1像素,正好是底部边框的像素。所以就遮住了ul的底部边框 */
color:#000000;
font-weight:bold
}
/*----------------------- 模块色彩样式调用 */
.sy1,.sy1 li a{ border-color:#6699CC;}
.sy1 li a{ background:#DBF5FD}
.sy2,.sy2 li a{ border-color:#FF6600;}
.sy2 li a{ background:#FFCC00}

</style>
<script type="text/javascript">
function tab(a,b,c)
{
for(i=1;i<=b;i++){
if(c==i)
{
// 判断选择模块
document.getElementById(a+"_mo_"+i).style.display = "block";  // 显示模块内容
document.getElementById(a+"_to_"+i).className = "no";   // 改变菜单为选中样式
}
else{
// 没有选择的模块
document.getElementById(a+"_mo_"+i).style.display = "none"; // 隐藏没有选择的模块
document.getElementById(a+"_to_"+i).className = "q";  // 清空没有选择的菜单样式
}
}
}
</script>
</head>

<body>
<div class="page">
<ul class="tab">
<li id="tab_to_1" class="no"><a href="#" onmouseover="tab('tab',4,1)">最新问题</a></li>
<li id="tab_to_2"><a href="#" onmouseover="tab('tab',4,2)">热门资讯</a></li>
<li id="tab_to_3"><a href="#" onmouseover="tab('tab',4,3)">最新回复</a></li>
<li id="tab_to_4"><a href="#" onmouseover="tab('tab',4,4)">CSS论坛</a></li>
</ul>
<div class="tab_mo">
<div id="tab_mo_1">
最新问题最新问题最新问题最新问题最新问题最新问题
</div>
<div id="tab_mo_2" style="display:none">
热门资讯热门资讯热门资讯热门资讯热门资讯热门资讯
</div>
<div id="tab_mo_3" style="display:none">
最新回复最新回复最新回复最新回复最新回复最新回复最新回复
</div>
<div id="tab_mo_4" style="display:none">
<a href="css/'>http://www.cssbbs.com">CSS论坛</a>CSS论坛CSS论坛CSS论坛CSS论坛CSS论坛CSS论坛
</div>
</div>
<h2>第二个</h2>

<ul class="tab">
<li id="tab2_to_1" class="no"><a href="#" onmouseover="tab('tab2',4,1)">最新问题</a></li>
<li id="tab2_to_2"><a href="#" onmouseover="tab('tab2',4,2)">热门资讯</a></li>
<li id="tab2_to_3"><a href="#" onmouseover="tab('tab2',4,3)">最新回复</a></li>
<li id="tab2_to_4"><a href="#" onmouseover="tab('tab2',4,4)">CSS论坛</a></li>
</ul>
<div class="tab_mo">
<div id="tab2_mo_1">
最新问题最新问题最新问题最新问题最新问题最新问题
</div>
<div id="tab2_mo_2" style="display:none">
热门资讯热门资讯热门资讯热门资讯热门资讯热门资讯
</div>
<div id="tab2_mo_3" style="display:none">
最新回复最新回复最新回复最新回复最新回复最新回复最新回复
</div>
<div id="tab2_mo_4" style="display:none">
<a href="css/'>http://www.cssbbs.com">CSS论坛</a>CSS论坛CSS论坛CSS论坛CSS论坛CSS论坛CSS论坛
</div>
</div>
<h2>第三个</h2>

<ul class="tab sy2">
<li id="tab3_to_1" class="no"><a href="#" onmouseover="tab('tab3',4,1)">最新问题</a></li>
<li id="tab3_to_2"><a href="#" onmouseover="tab('tab3',4,2)">热门资讯</a></li>
<li id="tab3_to_3"><a href="#" onmouseover="tab('tab3',4,3)">最新回复</a></li>
<li id="tab3_to_4"><a href="#" onmouseover="tab('tab3',4,4)">CSS论坛</a></li>
</ul>
<div class="tab_mo sy2">
<div id="tab3_mo_1">
最新问题最新问题最新问题最新问题最新问题最新问题
</div>
<div id="tab3_mo_2" style="display:none">
热门资讯热门资讯热门资讯热门资讯热门资讯热门资讯
</div>
<div id="tab3_mo_3" style="display:none">
最新回复最新回复最新回复最新回复最新回复最新回复最新回复
</div>
<div id="tab3_mo_4" style="display:none">
<a href="css/'>http://www.cssbbs.com">CSS论坛</a>CSS论坛CSS论坛CSS论坛CSS论坛CSS论坛CSS论坛
</div>
</div>
<h2>第四个</h2>

<ul class="tab sy1">
<li id="tab4_to_1" class="no"><a href="#" onmouseover="tab('tab4',4,1)">最新问题</a></li>
<li id="tab4_to_2"><a href="#" onmouseover="tab('tab4',4,2)">热门资讯</a></li>
<li id="tab4_to_3"><a href="#" onmouseover="tab('tab4',4,3)">最新回复</a></li>
<li id="tab4_to_4"><a href="#" onmouseover="tab('tab4',4,4)">CSS论坛</a></li>
</ul>
<div class="tab_mo sy1">
<div id="tab4_mo_1">
最新问题最新问题最新问题最新问题最新问题最新问题
</div>
<div id="tab4_mo_2" style="display:none">
热门资讯热门资讯热门资讯热门资讯热门资讯热门资讯
</div>
<div id="tab4_mo_3" style="display:none">
最新回复最新回复最新回复最新回复最新回复最新回复最新回复
</div>
<div id="tab4_mo_4" style="display:none">
<a href="css/'>http://www.cssbbs.com">CSS论坛</a>CSS论坛CSS论坛CSS论坛CSS论坛CSS论坛CSS论坛
</div>
</div>
</div>

<p>
查看此代码的教程:
<a href="css/'>http://www.cssbbs.com">CSS论坛</a> 版权所有
</p>
</body>
</html>
分享到:
评论

相关推荐

    13个css tab选项卡

    CSS Tab选项卡的实现可以完全不依赖JavaScript,利用`:target`伪类来切换内容的显示。当用户点击某个标签时,对应的ID将会添加到URL的哈希部分,`:target`伪类可以检测这个变化并隐藏其他内容。 3. **响应式设计**...

    纯css3经典tab选项卡动画特效

    纯CSS3经典Tab选项卡动画特效是一种无需JavaScript插件,仅通过CSS3属性实现的交互设计。这种技术在现代网页设计中广泛应用,因为其能够提供流畅的用户体验且减少了对JavaScript的依赖,从而优化了页面加载速度。...

    css+div漂亮的圆角tab选项卡

    综上所述,创建"css+div漂亮的圆角tab选项卡"需要理解HTML的基本结构,掌握CSS3的`border-radius`、伪类选择器、过渡效果等特性,并适当考虑浏览器兼容性。通过熟练运用这些技术,我们可以构建出既实用又美观的网页...

    不规则TAB选项卡JS代码

    不规则TAB选项卡JS代码是指使用JavaScript实现的一种具有独特设计风格的选项卡功能。JavaScript是网页开发中的重要脚本语言,它允许我们动态更新内容、响应用户交互并实现复杂的网页逻辑。 不规则TAB选项卡的设计...

    纯CSS3实现TAB选项卡切换.zip

    本项目“纯CSS3实现TAB选项卡切换”旨在利用CSS3特性,不依赖JavaScript,实现一种平滑的选项卡切换效果,具有淡入淡出的过渡动画。这个效果在网页设计中十分常见,常用于展示多个相关但内容互斥的部分,如产品介绍...

    tab选项卡新闻列表切换效果代码

    实现tab选项卡切换效果的常见技术包括HTML、CSS和JavaScript。HTML用于创建结构,CSS用于样式和布局,而JavaScript则负责交互逻辑,实现点击切换效果。具体到这个源码,可能包含以下关键部分: 1. HTML结构:创建一...

    JS网站常用简洁TAB选项卡.zip

    "JS网站常用简洁TAB选项卡"是一个专为网页开发设计的资源,旨在提供一种简单、高效的选项卡实现方式,具有良好的浏览器兼容性,适用于各种现代网页项目。 首先,我们要理解选项卡的基本工作原理。选项卡通常由一组...

    可多次使用的jQuery tab选项卡插件.zip

    jQuery Tab选项卡插件是一种广泛应用于网页开发中的交互式组件,它允许用户通过多个标签页来组织和切换内容。在本案例中,"可多次使用的jQuery tab选项卡插件.zip"是一个包含资源的压缩包,提供了可以重复利用的...

    手机移动端Tab选项卡切换带下拉数据异步加载js插件

    总结,手机移动端Tab选项卡切换带下拉数据异步加载js插件是一种高效的页面交互解决方案,它通过结合Tab选项卡、下拉加载和异步加载技术,提升了移动应用的性能和用户体验。开发者可以通过理解这些核心概念和技巧,...

    浏览器页面标签切换的TAB选项卡代码

    在HTML、CSS和JavaScript技术的支持下,我们可以轻松实现自定义的TAB选项卡代码。 一、HTML基础结构 首先,我们需要在HTML文档中创建一个容器,用于包含所有选项卡内容。每个选项卡通常由一个`&lt;div&gt;`元素表示,它们...

    不规则TAB选项卡效果.rar

    本文将深入探讨“不规则TAB选项卡效果”这一话题,它属于JavaScript(JS)特效的一种,用于创建独特且吸引人的用户体验。 首先,选项卡效果的基本概念是将大量内容分割成多个部分,每个部分对应一个选项卡,用户...

    JXX_纯静态Tab选项卡

    全浏览器兼容意味着这个Tab选项卡设计已经过测试,可以在主流的浏览器如Chrome、Firefox、Safari、Edge以及旧版的Internet Explorer等上正常工作。这通常涉及到使用跨浏览器的JavaScript语法和CSS属性,以及可能需要...

    tab选项卡切换不同图片代码

    Tab选项卡的基本结构通常包括HTML、CSS和JavaScript三部分。HTML用于构建选项卡的骨架,CSS用于样式化这些元素,使其看起来美观,而JavaScript则负责添加交互性,实现选项卡之间的切换。 HTML部分通常会包含一个父...

    js Tab选项卡特效

    两个简洁美观的网页Tab选项卡菜单 ;charset=gb2312"&gt; &lt;style type="text/css"&gt; body { margin: 5px; padding: 0px; } .tabs { width: auto; height: auto; border: 0px solid red; } .selectTab, ....

    纯css3超酷tab选项卡效果

    本文将深入探讨“纯css3超酷tab选项卡效果”这一主题,介绍如何利用CSS3特性实现一个既实用又具有视觉冲击力的选项卡组件。 选项卡是一种常见的网页交互元素,用于展示有限的、分组的内容。在这个案例中,我们使用...

    tab选项卡切换效果兼容所有IE内核

    在网页设计中,"Tab选项卡切换效果"是一种常见的用户界面设计模式,它允许用户在有限的空间内浏览多个相关的视图或内容。这种效果在现代网页和应用中广泛应用,为用户提供了一种简洁、高效的导航方式。然而,由于...

    jQuery全屏滑动TAB选项卡切换代码.zip

    《jQuery全屏滑动TAB选项卡切换代码》 在网页设计中,选项卡(Tab)是一种常见的用户界面元素,用于组织和展示大量的信息。全屏滑动的选项卡更是能够提供更加沉浸式的用户体验,使用户在浏览时更加专注于当前内容。...

    常用新闻分类TAB选项卡js特效.zip

    这个"常用新闻分类TAB选项卡js特效.zip"资源可能包含了实现上述功能的完整代码和示例,解压后可直接应用于项目中,或作为学习JavaScript交互效果的一个起点。通过理解和修改这些代码,你可以根据自己的需求定制个性...

    HTML5 JQUERY css3 Tab网页选项卡.rar

    这个名为“HTML5 JQUERY css3 Tab网页选项卡”的压缩包内容,显然是一个使用这些技术实现的网页选项卡组件。选项卡在网页设计中非常常见,常用于组织和展示大量内容,让用户能够轻松切换不同的视图。 首先,HTML5 ...

Global site tag (gtag.js) - Google Analytics