【问题标题】:Dark-theme in angular/material2 is not darkangular/material2 中的深色主题不暗
【发布时间】:2017-06-17 11:32:53
【问题描述】:

我正在使用 angular/material2,我正在尝试获得一个深色主题。 按照https://material.angular.io/guide/theming 的文档,我将我的自定义theme.scss 定义如下:

$dark-primary: md-palette($md-pink, 700, 500, 900);
$dark-accent:  md-palette($md-blue-grey, A200, A100, A400);
$dark-warn:    md-palette($md-deep-orange);

$dark-theme: md-dark-theme($dark-primary, $dark-accent, $dark-warn);

@include angular-material-theme($dark-theme);

主颜色、重音颜色和警告颜色显示为我的自定义主题中定义的颜色,但我没有看到深色主题(即黑色背景和前景色相应更改)。

example provided 和文档中,我看到背景是通过css 类设置的,但这不是我所期望的行为; dark-theme 在我看来是一种具有适当自动化水平的特定“类型”主题。

我错了吗?任何人都可以帮助我澄清这个问题?

【问题讨论】:

  • 所以脚本永远不会加载,或者它加载但没有正确应用?
  • 在我看来它不正确适用。但我不确定我应该期待哪种行为(基本上是得到一个黑暗的前景等等
  • 我不确定当前的主题。当我想为我的 ng2 项目使用通用深色主题时,我使用带有来自 bootswatch.com 的调色板的引导程序。这样我就可以在angular-cli.json 的两行中获得所有的响应和着色。虽然很抱歉,但不能再帮助你了。 - 黑暗主题bootswatch.com/slate
  • 感谢您的建议。我正在尝试使用 angular/material2 但也许它仍然有点不成熟
  • 我不熟悉使用 angular/material2 - 祝你好运。

标签: angular angular-material2


【解决方案1】:

来自文档:

最后,如果您的应用内容没有放在 mat-sidenav-container 元素中,您需要将 mat-app-background 类添加到您的包装元素(例如正文)中。

因此,如果您不使用 ma​​t-sidenav-container 组件,则需要将 Angular Material 2 背景类添加到 HTML 正文中,例如:

<body class="mat-app-background">

【讨论】:

  • 如果你有这个类在身体上,它仍然不工作..?
【解决方案2】:

我错了!!! 深色主题有效...但仅在 md- 选择器(例如 md-card)中有效。 设置正文背景颜色只能通过 css 完成。

【讨论】:

  • 这个问题解决了吗? $mat-dark-theme-foreground 和 $mat-dark-theme-background 下似乎没有任何效果。
  • 在 angular/material2 中,变量名称以 $md- 为前缀; $mat- 前缀可能在 Angularjs 的先前版本中。不知道能不能帮到你
  • 对不起。你说的对。使用最新版本的 angular/material (2.0.0- beta.2) 前缀是 mat 而不再是 md。回答您的问题:我已经解决了我的问题,只需放入 mytheme.scss body { background-color: #212121;}
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-08-29
  • 1970-01-01
  • 2017-09-12
  • 2016-01-25
  • 2019-08-20
  • 2018-09-18
  • 1970-01-01
相关资源
最近更新 更多