![](/img/trans.png)
[英]Unable to customize CSS with mat-tab or mat-ink-bar (Angular)
[英]Add triangle at bottom of material design tab mat-ink-bar
我想改變Angular材料選項卡的mat-ink-bar
的樣式。
我想要達到這樣的設計: Jsfiddle的例子
問題是mat-ink-bar
已經absolute
定位,我無法顯示my ::after
元素。 有什么方法可以達到這個目的嗎?
這是我在stackblitz 上嘗試的內容:stackblitz上的Mat選項卡
我的風格位於style.css
。 如果使用開發工具,底部的三角形將被隱藏。 我無法使用z-index
顯示它。任何幫助將不勝感激。
這里的代碼:
CSS
.c-tab .mat-ink-bar {
height: 5px;
}
.c-tab .mat-ink-bar::after {
content: '';
position: absolute;
top: 0;
right: 0;
left: 0;
margin: 0 auto;
width: 0;
height: 0;
border-top: solid 50px #3f51b5;
border-left: solid 50px transparent;
border-right: solid 50px transparent;
}
HTML
<mat-tab-group class="c-tab">
<mat-tab label="First"> Content 1 </mat-tab>
<mat-tab label="Second"> Content 2 </mat-tab>
<mat-tab label="Third"> Content 3 </mat-tab>
</mat-tab-group>
更新以下css將解決您的問題。
.mat-tab-label {
position: relative;
}
.mat-tab-header,
.mat-tab-label-container,
.mat-ripple {
overflow: inherit !important;
}
.mat-ink-bar:after {
content: "";
position: absolute;
top: 48px;
right: 0;
left: 0;
margin: 0 auto;
width: 0;
height: 0;
border-top: solid 20px #673ab7;
border-left: solid 20px transparent;
border-right: solid 20px transparent;
}
你缺少display:block
for your ::after
元素。 所以塊屬性不適用。 此外,您通過使用top
, left
, right
和bottom
來拉伸::after
的寬度以匹配其父級。
位於左上角或右下角,而不是兩者
.c-tab .mat-ink-bar {
position:relative
}
試試這個^^ ......
從理論上說,這就是你所需要的: updatet https://jsfiddle.net/Rakowu/e42wng0m/4/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.