Mat-tab-body-wrapper, не может редактировать css (угловой)

Я не могу изменить обертку тела вкладыша мата, которая ограничивает размер вкладки мата.

ех.

.mat-tab-body-wrapper {
  height: 100%:
}

Извините, Stackru заставляет меня комментировать некоторые ненужные вещи, которые вы можете увидеть с помощью NG-шаблона и моей гистограммы.

  <mat-tab-group mat-stretch-tabs>
     <mat-tab>
        'angular template and mat tab label'
              'extraneous elements'
        'end angular template and mat table label'
        <div class="container">
           'extraneous elements'
              <div style="display: block">
                 <canvas> 
                   /*My Bar chart*/
                 </canvas>
              </div>
        </div>               
     </mat-tab>
  </mat-tab-group>

0 ответов

Это из-за View Encapsulation. По умолчанию угловые рамки стилей, так что если вы пишете в своем my-component.component.css следующие

mat-tab-body-wrapper {
   height: 100%;
}

тогда css компилируется в нечто вроде

[_nghost-c15] mat-tab-body-wrapper[_ngcontent-c15] { 
   height: 100%;
}

и поэтому стиль не применяется, потому что селектор не совпадает.

Чтобы решить вашу проблему, просто скопируйте css в глобальной таблице стилей (т.е. styles.css), но будьте осторожны, это действие затронет все ваши тела из материальных вкладок.

Это устраняет проблему:

:host ::ng-deep .mat-tab-body-wrapper {
    height: 100%;
}

Вот простой способ решить вашу проблему. Примените собственный CSS к элементу.

<mat-tab-group class="custom-tabs"></mat-tab-group>

Импортировать ViewEncapsulation в '@angular/core'

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

Отключите инкапсуляцию представления в компоненте, который отображает вкладки.

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css'],
  encapsulation: ViewEncapsulation.None
})

Теперь вы можете стилизовать как.mat-tab-body, так и.mat-tab-body-wrapper.

.custom-tabs .mat-tab-body-wrapper {
  height: 100%;
}
Другие вопросы по тегам