Вкладка «Угловой материал» добавить изображение к кнопке - PullRequest
0 голосов
/ 14 сентября 2018

Я новичок в Angular.Я пытаюсь что-то сделать с вкладкой Angular Material.Я добавил вкладку к изображению, но эта часть не работает.Кто-нибудь знает, как добавить изображение на вкладку угловой материал.Пожалуйста, посмотрите на мое прикрепленное изображение, чтобы понять, чего я пытаюсь достичь.

Need like this

Мой код пока (демонстрация stackblitz)

Моя часть кода:

<mat-tab-group mat-stretch-tabs class="example-stretched-tabs mat-elevation-z4">
  <mat-tab label="First"  style="background:url('/assets/img/school-01.png')"> Content 1 </mat-tab>
  <mat-tab label="Second"> Content 2 </mat-tab>
  <mat-tab label="Third"> Content 3 </mat-tab>
</mat-tab-group>

css

.example-stretched-tabs {
  max-width: 800px;
}
/* active tab */
.mat-tab-list .mat-tab-labels .mat-tab-label-active {
  color:#0f2241;
  background-color: #535353;
  opacity: 1;
}

/* ink bar */
.mat-tab-group.mat-primary .mat-ink-bar {
  background: none;
  content: url('https://image.flaticon.com/icons/svg/60/60995.svg');
  height: 10px; 
}

.ts

import {Component, ViewEncapsulation} from '@angular/core';

/**
 * @title Tab group with stretched labels
 */
@Component({
  selector: 'tab-group-stretched-example',
  templateUrl: 'tab-group-stretched-example.html',
  styleUrls: ['tab-group-stretched-example.css'],
  encapsulation: ViewEncapsulation.None
})
export class TabGroupStretchedExample {}

Ответы [ 2 ]

0 голосов
/ 14 сентября 2018

Согласно угловым документам :

Для более сложных меток добавьте шаблон с директивой mat-tab-label внутри mat-tab.

Таким образом, вы можете поместить <img> или что угодно в шаблон <ng-template mat-tab-label/>.

<mat-tab-group>
    <mat-tab>
        <ng-template mat-tab-label>
            <img src="...">
            <span>foo</span>
        </ng-template>
    </mat-tab>
    <mat-tab>
        ....
    </mat-tab>
</mat-tab-group>
0 голосов
/ 14 сентября 2018

Вы можете использовать mat-icons, чтобы иметь изображения на вкладке, что-то вроде этого:

<mat-tabs>
  <mat-tab>
    <mat-tab-label>
      <mat-icon mat-svg-icon="img/icons/icon.svg"></mat-icon>
    </mat-tab-label>
    <mat-tab-body>
      Lorem
    </mat-tab-body>
  </mat-tab>
</mat-tabs>
...