当前位置:  开发笔记 > 程序员 > 正文

如何使用Angular Material Design创建黑白主题?

如何解决《如何使用AngularMaterialDesign创建黑白主题?》经验,为你挑选了1个好方法。

我期待为Angular Material Design创建一个简单的黑白主题.该领域的文档很少.

我的目标是这样做:

    不重音的背景颜色为白色

    不重音的文字颜色为黑色

    口音,错误,警告颜色将在稍后决定

我希望在配置块中做这样的事情:

$mdThemingProvider.theme('default')
  .primaryPalette('black')
  .backgroundPalette('white');

但是,白色和黑色调色板不存在.

有一个简单的方法吗?



1> 小智..:

我相信你需要做的是创建黑色和白色的调色板.例如:

angular.module('myApp', ['ngMaterial'])
.config(function($mdThemingProvider) {
  $mdThemingProvider.definePalette('black', {
    '50': '000000',
    '100': '000000',
    '200': '000000',
    '300': '000000',
    '400': '000000',
    '500': '000000',
    '600': '000000',
    '700': '000000',
    '800': '000000',
    '900': '000000',
    'A100': '000000',
    'A200': '000000',
    'A400': '000000',
    'A700': '000000',
    'contrastDefaultColor': 'light'
  });
  $mdThemingProvider.definePalette('white', {
    '50': 'ffffff',
    '100': 'ffffff',
    '200': 'ffffff',
    '300': 'ffffff',
    '400': 'ffffff',
    '500': 'ffffff',
    '600': 'ffffff',
    '700': 'ffffff',
    '800': 'ffffff',
    '900': 'ffffff',
    'A100': 'ffffff',
    'A200': 'ffffff',
    'A400': 'ffffff',
    'A700': 'ffffff',
    'contrastDefaultColor': 'dark'
  });

  $mdThemingProvider.theme('default')
    .primaryPalette('black')
    .backgroundPalette('white');
});

当然,你可以充实每个调色板的其余部分.值得注意的是,'contrastDefaultColor'对于在每种情况下获得正确的文本颜色非常重要.此外,遗憾的是,您似乎需要定义整个调色板.如果您不想创建全新的调色板,另一个选项是扩展现有调色板:

var blackPalette = $mdThemingProvider.extendPalette('grey', { '500': '000000' });
$mdThemingProvider.definePalette('black', blackPalette);

https://material.angularjs.org/latest/Theming/03_configuring_a_theme

推荐阅读
wangtao
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有