我们将Angular风格的Material 2(https://material.angular.io/)用于一个主要项目,但希望创建一个单独的静态(HTML / CSS)原型工作区,该工作区仅能访问Material 2 CSS该主要项目的样式。这个想法是,这个单独的目录将从Angular项目中提取已编译的CSS,但允许在HTML / CSS样式中进行实验,而无需配置任何JS。
是否可以从Angular Material 2项目中编译完整的CSS(组件,字体等),而无需AngularJS?似乎JS使用<style>
标签插入了样式。
这是我尝试构建的用于加载Material样式的SCSS文件的基本演示:
@import "~@angular/material/theming";
@include mat-core();
这可用于添加字体和类名之类的内容,但不会为这些类添加所有可能的样式。例如,卡片组件仅具有非常基本的样式,而缺少其他样式,例如似乎是通过JS填充的填充。
我还尝试了material-components-web项目,该项目已编译CSS here。它非常接近完成这项工作。但是不幸的是,仅将.mdc-
重命名为.mat-
是不够的。组件名称和用法并不完全相同。
例如,material-components-web使用BEM:mdc-card__actions
。
而Angular版本将其称为.mat-card-actions
。