angular - 使用 CSS 在 angular material 2 元素内按 Id 或 Class 定位特定元素样式

标签 angular css angular-material2

我有一个带有 Material 按钮菜单的 EntryComponent。 当我尝试使用::ng-deep 覆盖默认样式时,父组件中所有按钮组件的样式也会发生变化。

 <style>
 ::ng-deep .mat-button{
  max-width: 50px !important;
  min-width: 45px !important;
  height: 5em;
 }
 ::ng-deep .mat-button-ripple mat-ripple{
  max-width: 40px !important;
  min-width: 20px !important;
 }
 </style>

我也尝试使用一个类来定位样式,但我猜它不像通常的 CSS 那样工作。

 <style>
 .actions ::ng-deep .mat-button{
  max-width: 50px !important;
  min-width: 45px !important;
  height: 5em;
 }

 .actions ::ng-deep .mat-button-ripple mat-ripple{
  max-width: 40px !important;
  min-width: 20px !important;
 }
 </style>

请分享您的经验或知识。

入口组件

<button md-button [mdMenuTriggerFor]="menu" class="actions">
<md-icon>flash_on</md-icon></button>
<md-menu #menu="mdMenu">

  <button md-menu-item>
    <md-icon>autorenew</md-icon>
  </button>

  <button md-menu-item>
   <md-icon>border_color</md-icon>
  </button>

  <button md-menu-item>
   <md-icon>delete</md-icon>
  </button>

  <button md-menu-item>
   <md-icon>perm_identity</md-icon>
  </button>

  <button md-menu-item>
   <md-icon>payment</md-icon>
  </button>
</md-menu>

PS:这不是前面提到的重复问题,因为我们能够全局设置 Material 元素的样式,但问题是如何通过 Id 或 Class 设置目标 dom 元素的样式。希望这消除了困惑

最佳答案

正如 Milad 已经回答的那样,只需要使用这种样式

<style>
:host /deep/ .actions{
  max-width: 50px !important;
  min-width: 45px !important;
  height: 5em;
}

:host /deep/ .actions .mat-button-ripple mat-ripple{
  max-width: 40px !important;
  min-width: 20px !important;
}
</style>

关于angular - 使用 CSS 在 angular material 2 元素内按 Id 或 Class 定位特定元素样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46013873/

相关文章:

angular - 创建 'once emitting' 可观察对象

javascript - 有没有办法检测用户的浏览器是否支持@font-face?

html - 使 div 视频背景淡出 - 这可能吗?

angular - 为什么我的 Angular Material 按钮和链接带有下划线/轮廓线?

Angular Material 2 'mat-button' 显示为常规按钮

angular - 用于可观察链接的仓促 forkjoin 替代 rxjs?

javascript - 跨多个模块共享通用/动态组件

css - 如何用repeat-x背景拼接2个mx canvas对象?

Angular: Material 自定义主题不适用于输入字段

javascript - AngularJS2取消父元素操作?