Html 在选项卡中使用选项卡是';t工作材料设计Lite
我想在选项卡布局中使用选项卡布局。我使用的是Material Design lite,它已经为选项卡创建了类,因此我尝试使用相同的类 选项卡编号1-水平选项卡单独工作,没有任何问题。 选项卡编号2-垂直选项卡单独工作,没有任何问题 现在,我尝试在选项卡1中使用选项卡2。第一个选项卡的工作保持不变,但第二个选项卡不工作 请查看此Plunker链接: 代码-HTMLHtml 在选项卡中使用选项卡是';t工作材料设计Lite,html,css,tabs,material-design-lite,Html,Css,Tabs,Material Design Lite,我想在选项卡布局中使用选项卡布局。我使用的是Material Design lite,它已经为选项卡创建了类,因此我尝试使用相同的类 选项卡编号1-水平选项卡单独工作,没有任何问题。 选项卡编号2-垂直选项卡单独工作,没有任何问题 现在,我尝试在选项卡1中使用选项卡2。第一个选项卡的工作保持不变,但第二个选项卡不工作 请查看此Plunker链接: 代码-HTML <!DOCTYPE html> <html> <head> <link d
<!DOCTYPE html>
<html>
<head>
<link data-require="material-design-lite@1.1.1" data-semver="1.1.1" rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons" />
<link data-require="material-design-lite@1.1.1" data-semver="1.1.1" rel="stylesheet" href="https://code.getmdl.io/1.1.1/material.indigo-pink.min.css" />
<script data-require="material-design-lite@1.1.1" data-semver="1.1.1" src="https://code.getmdl.io/1.1.1/material.min.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
</head>
<body>
<h4>Combined Tab 2 within Tab 1</h4>
<div class="mdl-tabs mdl-js-tabs">
<div class="mdl-tabs__tab-bar">
<a href="#tab1" class="mdl-tabs__tab">Tab One</a>
<a href="#tab2" class="mdl-tabs__tab">Tab Two</a>
<a href="#tab3" class="mdl-tabs__tab">Tab Three</a>
</div>
<div class="mdl-tabs__panel is-active" id="tab1">
<div class="mdl-tabs vertical-mdl-tabs mdl-js-tabs mdl-js-ripple-effect">
<div class="mdl-grid mdl-grid--no-spacing">
<div class="mdl-cell mdl-cell--2-col">
<div class="mdl-tabs__tab-bar">
<a href="#tab1-panel" class="mdl-tabs__tab is-active">
<span class="hollow-circle"></span> General
</a>
<a href="#tab2-panel" class="mdl-tabs__tab">
<span class="hollow-circle"></span> Bank
</a>
<a href="#tab3-panel" class="mdl-tabs__tab">
<span class="hollow-circle"></span> Password
</a>
</div>
</div>
<div class="mdl-cell mdl-cell--10-col">
<div class="mdl-tabs__panel is-active" id="tab1-panel">
Content 1
</div>
<div class="mdl-tabs__panel" id="tab2-panel">
Content 2
</div>
<div class="mdl-tabs__panel" id="tab3-panel">
Content 3
</div>
</div>
</div>
</div>
</div>
<div class="mdl-tabs__panel" id="tab2">
<p>Second tab's content.</p>
</div>
<div class="mdl-tabs__panel" id="tab3">
<p>Third tab's content.</p>
</div>
</div>
<h4>Tab 1 Individual</h4>
<div class="mdl-tabs mdl-js-tabs">
<div class="mdl-tabs__tab-bar">
<a href="#tab1" class="mdl-tabs__tab">Tab One</a>
<a href="#tab2" class="mdl-tabs__tab">Tab Two</a>
<a href="#tab3" class="mdl-tabs__tab">Tab Three</a>
</div>
<div class="mdl-tabs__panel is-active" id="tab1">
<p>First tab's content.</p>
</div>
<div class="mdl-tabs__panel" id="tab2">
<p>Second tab's content.</p>
</div>
<div class="mdl-tabs__panel" id="tab3">
<p>Third tab's content.</p>
</div>
</div>
<h4>Tab 2 Individual</h4>
<div class="mdl-tabs vertical-mdl-tabs mdl-js-tabs mdl-js-ripple-effect">
<div class="mdl-grid mdl-grid--no-spacing">
<div class="mdl-cell mdl-cell--2-col">
<div class="mdl-tabs__tab-bar">
<a href="#tab1-panel" class="mdl-tabs__tab is-active">
<span class="hollow-circle"></span> General
</a>
<a href="#tab2-panel" class="mdl-tabs__tab">
<span class="hollow-circle"></span> Bank
</a>
<a href="#tab3-panel" class="mdl-tabs__tab">
<span class="hollow-circle"></span> Password
</a>
</div>
</div>
<div class="mdl-cell mdl-cell--10-col">
<div class="mdl-tabs__panel is-active" id="tab1-panel">
Content 1
</div>
<div class="mdl-tabs__panel" id="tab2-panel">
Content 2
</div>
<div class="mdl-tabs__panel" id="tab3-panel">
Content 3
</div>
</div>
</div>
</div>
</body>
</html>
如果我猜对了,您已经从本文中获取了“垂直选项卡的代码”。我写过那篇文章,据我所知,你的问题与垂直标签无关。如果在水平选项卡中也使用水平选项卡,您将面临同样的问题 问题可能是由于mdl选项卡的脚本代码引起的。最初的开发人员可能使用tabs父容器来查找该容器下的每个选项卡,并将单击事件绑定到该容器。这就是造成问题的原因。由于缩小,现在无法理解 解决方案:不要将单击事件绑定到父项下的子选项卡。您需要更改代码以根据单击的选项卡查找“最近的”父选项卡容器,并根据找到的父选项卡修改子选项卡
这可能会让人不知所措,但我可以猜到这就是正在发生的事情。我注意到嵌套选项卡在MDL中被破坏了。选择内部选项卡时,将取消选择所有其他选项卡(包括外部选项卡),因此外部选项卡上未选择任何选项卡,而内部选项卡将消失 我发现如果我使用JS“以编程方式”添加内部选项卡,那么这个错误就不会发生。执行此操作时,必须记住使用
componentHandler.upgradeElement(myInnerTabs)升级内部选项卡代码>在#tab1链接上,必须添加'is active'类。然后,该链接和面板可以相互通信。。。
/*Vertical Tabs*/
.vertical-mdl-tabs {
margin-top: 30px;
}
.vertical-mdl-tabs .mdl-tabs__tab-bar {
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
padding-bottom: 35px;
height: inherit;
border-bottom: none;
border-right: 1px solid #d9d9d9;
}
.vertical-mdl-tabs .mdl-tabs__tab {
width: 100%;
height: 35px;
line-height: 35px;
box-sizing: border-box;
letter-spacing: 2px;
}
.vertical-mdl-tabs.mdl-tabs.is-upgraded a.mdl-tabs__tab.is-active {
border-right: 2px solid #EF5350;
}
.vertical-mdl-tabs.mdl-tabs.is-upgraded .mdl-tabs__tab.is-active:after {
content: inherit;
height: 0;
}
.vertical-mdl-tabs.mdl-tabs.is-upgraded .mdl-tabs__panel.is-active, .mdl-tabs__panel {
padding: 0 30px;
}
.vertical-mdl-tabs.mdl-tabs .mdl-tabs__tab {
text-align: left;
}