gpt4 book ai didi

html - 使子选项卡溢出选项卡栏(使用 flexbox)

转载 作者:行者123 更新时间:2023-11-27 23:46:04 25 4
gpt4 key购买 nike

我正在尝试为某些选项卡添加一点设计效果。

选项卡包含在带有底部边框的选项卡栏内。

当一个选项卡处于事件状态时,我希望它看起来好像与内容处于同一级别,而其他选项卡则向后退。

为此,我需要使事件选项卡下方的边框部分消失 - 我的第一个想法是将选项卡背景设置为白色并与父级重叠 - 但这不起作用。

有人知道如何获得我正在寻找的效果吗?

.container {
padding: 30px;
}

.tab-bar {
display: flex;
background-color: #fff;
border-bottom: solid 1px rgba(0,0,0, .12);
height: 48px;
overflow: hidden;
}
.tab {
flex: 1 1 0;
display: flex;
align-items: center;
justify-content: center;
height: 48px;
max-width: 200px;
min-width: 100px;
padding: 0 16px;
}

.tab[data-state="active"] {
box-shadow: 0 2px 4px -1px rgba(0,0,0,0.2), 0 4px 5px 0 rgba(0,0,0,0.14), 0 1px 1px 0 rgba(0,0,0,0.12);
color: red;
}
<div class="container">
<div class="tab-bar">
<div class="tab" data-state="active">Active</div>
<div class="tab">Not Active</div>
</div>
</div>

最佳答案

from earlier comment

draw the bottom border from the non active tabs

add eventually a pseudo element to fill the room left.

overflow:hidden on the parent hides shadows and also do not allow children to stand on top of the border in order to hide it

你可以做什么:

.container {
padding: 30px;
}

.tab-bar {
display: flex;
background-color: #fff;
height: 48px;
}

.tab {
flex: 1 1 0;
display: flex;
align-items: center;
justify-content: center;
max-width: 200px;
min-width: 100px;
padding: 0 16px;
border-bottom: solid 1px rgba(0, 0, 0, .12);
}

.tab-bar::after {
content: '';
flex: 1;
border-bottom: solid 1px rgba(0, 0, 0, .12);
}

.tab[data-state="active"] {
box-shadow: 0 -2px 4px -1px rgba(0, 0, 0, 0.2), 0 -4px 5px 0 rgba(0, 0, 0, 0.14), 0 -1px 1px 0 rgba(0, 0, 0, 0.12);
color: red;
border-bottom: none;
}
<div class="container">
<div class="tab-bar">
<div class="tab" data-state="active">Active</div>
<div class="tab">Not Active</div>
</div>
</div>

关于html - 使子选项卡溢出选项卡栏(使用 flexbox),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56809300/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com