角度材料缺少 css 类

Posted

技术标签:

【中文标题】角度材料缺少 css 类【英文标题】:angular material missing css classes 【发布时间】:2014-12-26 11:56:13 【问题描述】:

我刚刚开始使用角度材料。我已经下载并引用了所有文件作为here 上的使用说明。然后从here 复制所有 html 代码以试用按钮。我得到了大部分工作,包括点击动画,但它没有任何主题,如md-primary。这就是我得到的。

我已经引用了angular-material.css,但我在其中找不到md-primary 或任何css 类。我缺少什么参考或如何为角度材料创建这些 css 类?这是演示页面上的样子。

我的代码示例。

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no" />    
<link href="../bower_components/angular-material/angular-material.css" rel="stylesheet" />
<link href="style.css" rel="stylesheet" />
</head>
<body ng-app="YourApp">

<div ng-controller="YourController">
    <md-content>

        <section layout="vertical" layout-sm="horizontal" layout-align="center center">
            <md-button>Button</md-button>
            <md-button noink class="md-primary">Primary (noink)</md-button>
            <md-button disabled class="md-primary">Disabled</md-button>
            <md-button class="md-warn">Warn</md-button>
            <div class="label">flat</div>
        </section>

        <section layout="vertical" layout-sm="horizontal" layout-align="center center">
            <md-button class="md-raised">Button</md-button>
            <md-button class="md-raised md-primary">Primary</md-button>
            <md-button disabled class="md-raised md-primary">Disabled</md-button>
            <md-button class="md-raised md-warn">Warn</md-button>
            <div class="label">raised</div>
        </section>

        <section layout="vertical" layout-sm="horizontal" layout-align="center center">
            <md-button class="md-fab" aria-label="Time">
                <md-icon icon="/img/icons/ic_access_time_24px.svg" style="width: 24px; height: 24px;"></md-icon>
            </md-button>

            <md-button class="md-fab" aria-label="New document">
                <md-icon icon="/img/icons/ic_insert_drive_file_24px.svg" style="width: 24px; height: 24px;"></md-icon>
            </md-button>

            <md-button class="md-fab" disabled arial-label="Comment">
                <md-icon icon="/img/icons/ic_comment_24px.svg" style="width: 24px; height: 24px;"></md-icon>
            </md-button>

            <md-button class="md-fab md-primary" md-theme="cyan" aria-label="Profile">
                <md-icon icon="/img/icons/ic_people_24px.svg" style="width: 24px; height: 24px;"></md-icon>
            </md-button>
            <div class="label">FAB</div>
        </section>

        <section layout="vertical" layout-sm="horizontal" layout-align="center center">
            <md-button class>Reset</md-button>
            <md-button class>RSVP</md-button>
            <div class="label">Button Group</div>
        </section>

        <section layout="vertical" layout-sm="horizontal" layout-align="center center">
            <md-button class="md-primary" md-theme="green">Button</md-button>
            <md-button class="md-primary md-raised" md-theme="indigo">Button</md-button>
            <md-button class="md-primary md-raised" md-theme="orange">Button</md-button>
            <md-button class="md-primary" md-theme="cyan">Button</md-button>
            <div class="label">Themed</div>
        </section>

    </md-content>
</div>

<script src="../bower_components/angular/angular.js"></script>
<script src="../bower_components/angular-aria/angular-aria.js"></script>
<script src="../bower_components/angular-animate/angular-animate.js"></script>
<script src="../bower_components/hammerjs/hammer.js"></script>
<script src="../bower_components/angular-material/angular-material.js"></script>
<script>

    // Include app dependency on ngMaterial

    angular.module('YourApp', ['ngMaterial'])
        .controller("YourController", YourController);

    function YourController() 

    

</script>

【问题讨论】:

从演示页面查看源代码,它看起来像是从 docs.css 获取的 md-primary。我不知道那会在哪里,但我希望这能为您指明正确的方向。 你必须从github.com/angular/bower-material/tree/master/themes这里下载主题然后引用它们。但是,它仍然无法正常工作。 【参考方案1】:

更新:Aaand 它的工作原理!他们刚刚发布了 v.0.5.0,现在包括主题。演示网站运行脱离主机,这就是它以前工作的原因。 只需运行bower install angular-material,一切都很好。您仍然必须参考主题 css。

<!DOCTYPE html>
<html lang="en">
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0/angular.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0/angular-animate.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0/angular-route.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0/angular-aria.min.js"></script>
<script src="bower_components/hammerjs/hammer.min.js"></script>
<script src="bower_components/angular-material/angular-material.js"></script>

<!-- default themes and core styles -->
<link rel="stylesheet" href="bower_components/angular-material/angular-material.css">

<!-- extra, overriding theme files -->
<link rel="stylesheet" href="bower_components/angular-material/themes/indigo-theme.css">
<link rel="stylesheet" href="bower_components/angular-material/themes/green-theme.css">

<!-- Your custom javascript code -->
<script>
angular.module('myApp', [ 'ngMaterial' ]);
</script>
</head>
<body>

<div ng-app="myApp" layout="vertical">

  <!-- The md-toolbar and all of its children will use the indigo theme -->
  <md-toolbar md-theme="indigo">
I'm indigo
  </md-toolbar>

  <!-- The md-content and all of its children will use the green theme -->
  <md-content md-theme="green">
and I'm green
  </md-content>

  <!-- The button uses default-theme, since no md-theme is found -->
  <md-button>Hello</md-button>

<md-progress-linear md-theme="green" mode="indeterminate" ng-value="30"></md-progress-linear>

</div>
</body>
</html>

【讨论】:

我遇到了类似的问题,但事实证明我只是缺少在我的应用程序声明中注入“ngMAterial”。【参考方案2】:

对于 0.8.3,请参阅主题文档。

https://material.angularjs.org/#/Theming/01_introduction

您可以使用 Google 主题文档中定义的以下内容之一命名您自己的“主题”:

红色 粉红色 紫色 深紫色 靛蓝 蓝色 浅蓝色 青色 蓝绿色 绿色 浅绿色 石灰 黄色 琥珀色 橙色 深橙色 棕色 灰色 蓝灰色

每个主题有 4 个意图:

主要 口音 警告 背景

要选择一个主题,你必须在你的 JS 中声明它:

 angular.module('myApp', ['ngMaterial'])
 .config(function($mdThemingProvider) 
   $mdThemingProvider.theme('default')
    .primaryPalette('pink')
    .accentPalette('orange');
 );

【讨论】:

以上是关于角度材料缺少 css 类的主要内容,如果未能解决你的问题,请参考以下文章

角度材料 - 标签与输入重叠

视图不更新 - 缺少 css 类

vbscript 11.检测补充材料引用或者增刊。 Sec是否遗漏(缺少补充材料的引用/补充材料部分缺失

为啥 Firefox 缺少某些 HTML 表格的边框

Blender 导出到 JSON 以获取 THREE.js 缺少的材料

角度 8 CSS 查询上的角度材料