我想知道如何使用Material的图标,因为这不起作用:
<material-icon icon = "/img/icons/ic_access_time_24px.svg"> </material-icon>
我猜想作为图标属性参数的路径存在问题。我想知道此图标文件夹实际上在哪里?
我想知道如何使用Material的图标,因为这不起作用:
<material-icon icon = "/img/icons/ic_access_time_24px.svg"> </material-icon>
我猜想作为图标属性参数的路径存在问题。我想知道此图标文件夹实际上在哪里?
Answers:
由于其他答案未能解决我的担忧,因此我决定编写自己的答案。
md-icon
指令的icon属性中给出的路径是位于静态文件目录中某个位置的.png或.svg文件的URL。因此,您必须在icon属性中放置该文件的正确路径。ps将文件放在正确的目录中,以便您的服务器可以使用它。
请记住,md-icon
它不像引导图标。当前,它们只是显示.svg文件的指令。
更新资料
自发布此问题以来,角度材料设计已发生了很大变化。
现在有几种使用方法 md-icon
第一种方法是使用SVG图标。
<md-icon md-svg-src = '<url_of_an_image_file>'></md-icon>
例:
<md-icon md-svg-src = '/static/img/android.svg'></md-icon>
要么
<md-icon md-svg-src = '{{ getMyIcon() }}'></md-icon>
:where getMyIcon
是在中定义的方法$scope
。
要么
<md-icon md-svg-icon="social:android"></md-icon>
要使用此功能,您必须在$mdIconProvider
服务中使用svg图标集配置您的应用程序。
angular.module('appSvgIconSets', ['ngMaterial'])
.controller('DemoCtrl', function($scope) {})
.config(function($mdIconProvider) {
$mdIconProvider
.iconSet('social', 'img/icons/sets/social-icons.svg', 24)
.defaultIconSet('img/icons/sets/core-icons.svg', 24);
});
第二种方法是使用字体图标。
<md-icon md-font-icon="android" alt="android"></md-icon>
<md-icon md-font-icon="fa-magic" class="fa" alt="magic wand"></md-icon>
在执行此操作之前,您必须像这样加载字体库。
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
或使用带有连字的字体图标
<md-icon md-font-library="material-icons">face</md-icon>
<md-icon md-font-library="material-icons">#xE87C;</md-icon>
<md-icon md-font-library="material-icons" class="md-light md-48">face</md-icon>
有关更多详细信息,请查看我们的
<i class='material-icons'>icon_name</i>
,但md-font-library
完美地解决了我的问题。
今天最简单的方法就是从Google字体中请求Material Icons字体,例如在您的HTML标头标记中:
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
或在样式表中:
@import url(https://fonts.googleapis.com/icon?family=Material+Icons);
然后按照md-icon指令中的说明使用带有连字的字体图标。例如:
<md-icon aria-label="Menu" class="material-icons">menu</md-icon>
图标/连字的完整列表位于https://www.google.com/design/icons/
md-icons还没有发布角材料。我一直在使用Polymer的图标,无论如何它们可能都是一样的。
bower install polymer/core-icons
简单方法:使用以下CDN:
<script src="//cdnjs.cloudflare.com/ajax/libs/angular-material-icons/0.5.0/angular-material-icons.min.js"></script>
将ngMdIcons注入您的angularjs应用程序:
angular.module('demoapp', ['ngMdIcons']);
在html中使用ng-md-icon指令,通过CSS指定填充颜色:
<ng-md-icon icon="..." style="fill: ..." size="..."></ng-md-icon>
ng-md
并不像md-icon那样使图标居中。
position:relative;
然后将svg元素或容器移动by left-top-right-bottom
到所需的更好位置。
在他们的最新版本中,有一个名为 md-icon
<md-icon icon="img/icons/ic_refresh_24px.svg"></md-icon>
截至撰写本文时,所有md-
前缀现在都是mat-
前缀!
将其放在您的html头中:
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
导入我们的模块:
import { MatIconModule } from '@angular/material';
在您的代码中使用:
<mat-icon>face</mat-icon>
这是最新的文档:
<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>
来源:https : //material.angularjs.org/#/demo/material.components.button
通过使用像
使用css和字体一样的位置
@font-face {
font-family: 'Material-Design-Icons';
src: url('Material-Design-Icons.eot');
src: url('Material-Design-Icons.eot?#iefix') format('embedded-opentype'),
url('Material-Design-Icons.woff2') format('woff2'),
url('Material-Design-Icons.woff') format('woff'),
url('Material-Design-Icons.ttf') format('truetype'),
url('Material-Design-Icons.svg#ge_dinar_oneregular') format('svg');
font-weight: normal;
font-style: normal;
}