记录一个简洁的html tab 标签

<html xmlns="http://www.w3.org/1999/xhtml"> 

<head> 

<meta http-equiv="Content-Type" content="text/html;charset=gb2312" /> 

<title>简洁Tab</title> 

<style type="text/css">  

 

ul{ list-style:none;} 

/*选项卡1*/ 

#Tab1{ 

width:460px; 

margin:0px; 

padding:0px; 

margin:0 auto;} 

/*选项卡2*/ 

#Tab2{ 

width:576px; 

margin:0px; 

padding:0px; 

margin:0 auto;} 

/*菜单class*/ 

.Menubox { 

width:100%; 

background:url(http://www.jb51.net/upload/small/20079299441652.gif); 

height:28px; 

line-height:28px; 

.Menubox ul{ 

margin:0px; 

padding:0px; 

.Menubox li{ 

float:left; 

display:block; 

cursor:pointer; 

width:114px; 

text-align:center; 

color:#949694; 

font-weight:bold; 

.Menubox li.hover{ 

padding:0px; 

background:#fff; 

width:116px; 

border-left:1px solid #A8C29F; 

border-top:1px solid #A8C29F; 

border-right:1px solid #A8C29F; 

background:url(http://www.jb51.net/upload/small/200792994426548.gif); 

color:#739242; 

font-weight:bold; 

height:27px; 

line-height:27px; 

.Contentbox{ 

clear:both; 

margin-top:0px; 

border:1px solid #A8C29F; 

border-top:none; 

height:181px; 

text-align:center; 

padding-top:8px; 

--> 

</style> 

<script> 

<!-- 

/*第一种形式 第二种形式 更换显示样式*/ 

function setTab(name,cursel,n){ 

for(i=1;i<=n;i++){ 

var menu=document.getElementById(name+i); 

var con=document.getElementById("con_"+name+"_"+i); 

menu.className=i==cursel?"hover":""; 

con.style.display=i==cursel?"block":"none"; 

//--> 

</script> 

</head> 

<body>



 

<div id="Tab1"> 

<div class="Menubox"> 

<ul> 

<li id="one1" onClick="setTab('one',1,4)" class="hover">新闻1</li> 

<li id="one2" onClick="setTab('one',2,4)" >新闻2</li> 

<li id="one3" onClick="setTab('one',3,4)">新闻3</li> 

<li id="one4" onClick="setTab('one',4,4)">新闻4</li> 

</ul> 

</div> 

<div class="Contentbox"> 

<div id="con_one_1" class="hover">新闻列表1</div> 

<div id="con_one_2" style="display:none">新闻列表2</div> 

<div id="con_one_3" style="display:none">新闻列表3</div> 

<div id="con_one_4" style="display:none">新闻列表4</div> 

</div> 

</div>

</body>


转载于:https://my.oschina.net/u/931071/blog/284791

### 回答1: 这是一个使用 Vue.js 实现 tab 切换的简单代码示例: ``` <template> <div> <ul class="tab-header"> <li v-for="(tab, index) in tabs" :key="index" :class="{ active: currentTab === index }" @click="currentTab = index"> {{ tab.title }} </li> </ul> <div class="tab-content"> <slot :tab="tabs[currentTab]"></slot> </div> </div> </template> <script> export default { data() { return { currentTab: 0, tabs: [ { title: 'Tab 1', content: 'Tab 1 content' }, { title: 'Tab 2', content: 'Tab 2 content' }, { title: 'Tab 3', content: 'Tab 3 content' }, ], }; }, }; </script> <style> .tab-header { display: flex; list-style: none; margin: 0; padding: 0; } .tab-header li { padding: 10px; cursor: pointer; } .tab-header li.active { background-color: #ddd; } </style> ``` 在父组件中使用该组件: ``` <template> <tab-component> <template v-slot:default="{ tab }"> {{ tab.content }} </template> </tab-component> </template> <script> import TabComponent from './TabComponent.vue'; export default { components: { TabComponent, }, }; </script> ``` 该代码实现了一个通过单击标签切换内容的简单 tab 组件。 ### 回答2: 用Vue写一个tab切换可以使用Vue的组件和指令来实现。 首先,需要创建一个父组件,里面包含多个子组件和一个数据来记录当前选中的tab。可以使用v-for指令和数组来生成多个子组件,并使用v-bind指令来绑定当前选中的tab。 ```html <template> <div> <div class="tabs"> <div v-for="(tab, index) in tabs" :key="index" @click="selectTab(index)" :class="{ active: activeTab === index }">{{ tab }}</div> </div> <div class="content"> <div v-for="(tab, index) in tabs" :key="index" v-show="activeTab === index">{{ tab }}</div> </div> </div> </template> <script> export default { data() { return { activeTab: 0, tabs: ['Tab 1', 'Tab 2', 'Tab 3'] }; }, methods: { selectTab(index) { this.activeTab = index; } } }; </script> ``` 父组件中有一个`activeTab`数据用来记录当前选中的tab一个`tabs`数组用来存储所有的tab名称。 `<div class="tabs">`中使用`v-for`指令生成多个tab,同时使用`v-bind`绑定点击事件和样式,并通过`activeTab`判断是否选中当前tab。 `<div class="content">`中也使用`v-for`指令生成多个tab内容,使用`v-show`指令根据`activeTab`来显示当前选中的tab内容。 最后,在父组件中的`selectTab`方法中,通过点击事件来改变`activeTab`的值,从而实现tab切换的功能。 这样就实现了一个简单的tab切换功能。 ### 回答3: Vue是一种流行的JavaScript框架,可以用来构建交互式的Web界面。如果要使用Vue来编写一个Tab切换,可以按照以下步骤进行: 1. 首先,在Vue项目中安装并导入Vue库,可以使用命令"npm install vue"进行安装,并在JavaScript文件中导入Vue。 2. 在HTML文件中创建一个包含Tab切换的容器,可以使用div元素,并为其设置一个唯一的id属性。 3. 在JavaScript文件中,创建一个Vue实例,并将其关联到容器中。可以使用"new Vue()"语法来创建Vue实例,并使用el选项指定容器的id。 4. 在Vue实例的data选项中,定义一个变量来跟踪当前活动的Tab索引。可以设置默认值为0,表示初始状态下第一个Tab处于活动状态。 5. 在模板中,使用v-for指令遍历一个包含所有Tab标题的数组,并将每个标题显示为可点击的标签。可以在点击标签时,调用一个方法来更新当前活动的Tab索引。 6. 在模板中,使用v-show指令将只有当前活动Tab的内容显示出来,其他Tab的内容隐藏起来。可以使用当前活动的Tab索引来判断哪个Tab应该显示。 7. 最后,在CSS文件中定义样式来控制Tab标题和内容的外观,可以根据需要进行调整。 通过以上步骤,就可以使用Vue完成一个简单的Tab切换功能。可以随意添加更多的Tab,并根据实际需要进行样式和功能的定制。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值