1 回答

TA貢獻1982條經(jīng)驗 獲得超2個贊
對于簡單的選項卡面板,您可以創(chuàng)建一個容器并overflow: hidden添加一個比該容器更寬的內(nèi)部容器。在您的情況下,您有 3 個選項卡,因此內(nèi)部容器應(yīng)該很300%寬。
這將允許容器尊重最高的內(nèi)部 div,因為它本質(zhì)上是裁剪內(nèi)部容器。
然后使用 javascript 調(diào)整transformon.inner來控制顯示哪個選項卡。我沒有編寫 JavaScript,但是當(dāng)單擊“選項卡 1”時,將innerdiv 設(shè)置為transform: translateX(0). 當(dāng)單擊“tab 3”時,transform: translateX(-66.666%)...希望您能獲得 ide。
:root {
--num-of-tabs: 3;
}
.container {
width: 400px;
overflow: hidden;
border: 1px solid gray;
}
.inner {
width: calc(var(--num-of-tabs) * 100%);
display: flex;
transform: translateX(-33.33%); /* staring on tab #2 */
}
.box {
width: calc(100% / var(--num-of-tabs));
}
<div class="container">
<div class="inner">
<div class="box">
blah blah blah
</div>
<div class="box">
blah blah blah blah
</div>
<div class="box">
blah blah blah<br/>
blah blah blah<br/>
blah blah blah<br/>
blah blah blah<br/>
blah blah blah<br/>
blah blah blah<br/>
blah blah blah<br/>
blah blah blah<br/>
blah blah blah<br/>
blah blah blah
</div>
</div>
</div>
添加回答
舉報