В моем угловом 7 приложении я использую дизайн материала. В моем глобальном файле styles.css у меня есть стили для компонентов материала, а именно для матовых значков. Однако мои настройки переопределяются собственным стилем материала.
Использование! Важный, очевидно, работает, но я думаю, что есть более естественный способ, я просто не могу понять это. В инструментах chrome dev мой селектор классов CSS просто появляется ниже селектора дизайна материала, и я думаю, это означает, что он просто был применен раньше, и, следовательно, стиль материала имеет приоритет, так как они оба являются селекторами классов и должны иметь одинаковый приоритет ( во всяком случае, это мое понимание).
Соответствующая запись от styles.css:
.icon {
display: inline-block;
height: 30px;
width: 30px;
margin: 0 auto;
text-align: center;
vertical-align: middle;
}
Как это выглядит в Chrome Dev Tools:
.mat-icon {
background-repeat: no-repeat;
display: inline-block;
fill: currentColor;
height: 24px;
width: 24px;
}
.icon {
height: 30px;
width: 30px;
margin: 0 auto;
text-align: center;
vertical-align: middle;
}
Ширина и высота просто перечеркнуты в моем стиле .icon.
Как я могу сделать мою таблицу стилей приоритетной? Могу ли я как-то указать порядок загрузки таблиц стилей или явно указать angular, что я хочу, чтобы мои стили переняли стили материала?
РЕДАКТИРОВАТЬ: добавлен HTML, где иконки мат:
<mat-toolbar color="primary">
<div fxFlex fxLayout>
<mat-toolbar-row fxFlex fxLayout fxLayoutGap="20px" class="navigation-items icon-group">
<span>
<a routerLink="/">
<mat-icon class="icon">home</mat-icon>
<span class="label">Home</span>
</a>
</span>
<span>
<a routerLink="/product">
<mat-icon class="icon">bubble_chart</mat-icon>
<span class="label">Product</span>
</a>
</span>
<span>
<a routerLink>
<mat-icon class="icon">widgets</mat-icon>
<span class="label">Expedition</span>
</a>
</span>
<span class="spacer"></span>
<span>
<a routerLink (click)="logout()">
<mat-icon class="icon">input</mat-icon>
<span class="label">LogOut</span>
</a>
</span>
</mat-toolbar-row>
</div>
</mat-toolbar>