【发布时间】:2020-04-25 02:46:13
【问题描述】:
我正在 blazor 中创建一个选项卡控件,并且我希望我的水平选项卡栏能够在有很多选项卡时做出响应。
我试图用我的tc-tabs 处理它,但没有显示滚动条,而是在新行上显示显示其他选项卡。
我正在寻找两种不同的解决方案: - 一个用滚动条处理溢出的地方 - 另一个使用标签栏两侧的 2 个箭头处理溢出的另一个(我可以尝试使用剃须刀功能进行管理)
也,我试图修复每个选项卡右上角的关闭按钮,尤其是当标签名称太长时。
编辑(修复了右侧的关闭按钮 + 选项卡内的文本溢出):
基于这篇文章的滚动条解决方案仍然有问题:Bootstrap horizontal scrollable tab bar
<ul class="nav nav-tabs tc-tabs">
@foreach (Tab tabItem in ItemsSource) {
<li class="tc-tab @(SelectedItem == tabItem ? "tc-tab-active" : string.Empty)">
<div @onclick="@(() => ActivatePage(tabItem))">
<span class="tc-tab-title @(SelectedItem == tabItem ? "active" : string.Empty)">
@tabItem.Title
</span>
</div>
<button class="close tc-tab-close" type="button" aria-label="Close" @onclick="@(() => DeletePage(tabItem))">
<span aria-hidden="true">×</span>
</button>
</li>
}
</ul>
css:
tc-tabs {
overflow-x: auto;
overflow-y: hidden;
display: -webkit-box;
}
.tc-tab {
width: 200px;
position: relative;
padding: 5px;
float: none;
}
.tc-tab-active {
background-color: darkgray;
color: white;
}
.tc-tab-title {
width: 85%;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
position: absolute;
}
.tc-tab-close {
width: 10%;
}
【问题讨论】:
-
滚动条仍有问题,我正在尝试与stackoverflow.com/questions/22582520/… 这篇文章相同,但仍然是同样的问题。我不明白为什么它没有相同的行为。
-
发现问题,来自
nav的属性 ->flex-wrap: wrap为了处理滚动条溢出,需要移除该属性
标签: html css twitter-bootstrap asp.net-core blazor