更改 AngularJS Material 图标的图标大小

Posted

技术标签:

【中文标题】更改 AngularJS Material 图标的图标大小【英文标题】:Change the icon size of AngularJS Material icons 【发布时间】:2016-08-02 10:27:33 【问题描述】:

我已经引用然后声明了一个图标

<i class="material-icons">face</i>

但是如何更改图标大小?

在官方网站 https://design.google.com/icons/ 我可以看到他们使用像 class="md-icon dp48" 这样的类,但它不适用于我的情况。

【问题讨论】:

您不能只说“它在我的情况下不起作用”并期望我们知道发生了什么。发布指向网站或整个代码的链接! 【参考方案1】:

通过阅读 github 中的材料设计,我发现这些有用的东西可能会对您有所帮助。

 /* Rules for sizing the icon. */
.material-icons.md-18  font-size: 18px; 
.material-icons.md-24  font-size: 24px; 
.material-icons.md-36  font-size: 36px; 
.material-icons.md-48  font-size: 48px; 

/* Rules for using icons as black on a light background. */
.material-icons.md-dark  color: rgba(0, 0, 0, 0.54); 
.material-icons.md-dark.md-inactive  color: rgba(0, 0, 0, 0.26); 

/* Rules for using icons as white on a dark background. */
.material-icons.md-light  color: rgba(255, 255, 255, 1); 
.material-icons.md-light.md-inactive  color: rgba(255, 255, 255, 0.3); 

从上面的代码中,您可以简单地更改或覆盖材质 css 图标。

示例代码:

<i class="material-icons md-18">face</i>

更多详情here

【讨论】:

如果您检查design.google.com/icons 上的图标元素源,他们为什么使用.md-icon 类但没有.material-icons - 这有点令人困惑 一切都在他们的 github 存储库中进行了解释。这是因为 md-icon 就像从 material-icons 中提取的扩展 css。例如:.md-icon font-family: 'Material Icons'; . 但我认为 google 并没有在 https://fonts.googleapis.com/icon?family=Material+Icons 为您提供这些类的 css 样式。你必须自己写。 @claudios 在使用 Material-Kit 时,您应该自己添加这些类还是内置的?好像是前者。 @AdjunctProfessorFalcon 只需尝试添加 md-48 以查看它是否对您有用。如果没有,那么您需要添加自定义类。【参考方案2】:

如果我只做一次性的,我通常只在标签中的字体大小添加一个 style= 修改。但是,长话短说,除了定义自己的尺​​寸样式以附加到 css 中作为更永久的解决方案之外,没有真正的技巧。

<i class="material-icons" style="font-size: 50px">insert_invitation</i>

【讨论】:

这是快速而肮脏的解决方案的最佳方法。 @Alexei 非常快,但是如果您在不同的屏幕尺寸上进行设计,那就不好了。【参考方案3】:

如果您使用的是scss

@mixin md-icon-size($size: 24px) 
  font-size: $size;
  height: $size;
  width: $size;


.md-icon-16 
  @include md-icon-size(16px);


.md-icon-18 
  @include md-icon-size(18px);


.md-icon-24 
  @include md-icon-size(24px);


.md-icon-36 
  @include md-icon-size(36px);

【讨论】:

【参考方案4】:

您可以使用普通 css,但必须使用以下命令覆盖内联样式:

font-size: 50px !important;

【讨论】:

【参考方案5】:

更改 Materialise 图标大小的最佳方法是向 i 类添加修饰符:

<i class="material-icons small">menu</i>
<i class="material-icons medium">menu</i>
<i class="material-icons large">menu</i>

您可以在 Materialise 网站上的图标下找到更多关于更改图标大小的信息。

【讨论】:

【参考方案6】:

你可以改变 font-size 属性,它会反映在图标上,因为它是一个“FONT ICON”

【讨论】:

【参考方案7】:

有时设置字体大小不会减小图标大小。因为,推荐的字体大小是 18、24、36 或 48 像素。

尝试为该特定图标设置 "height" 、 "width" 、 "line-height" 属性。这可能会有所帮助。

【讨论】:

【参考方案8】:

图标标签有一个 size 属性,比如 check_circle

所以使用 size 属性,我们可以改变图标的​​大小。

【讨论】:

【参考方案9】:

我按照 Claudios 提供的答案进行了额外更改。 我正在使用 MDL,为了使图标在按钮中居中,必须更改 position left 属性(默认为 left:50%)。

CSS:

.material-icons.md-36  
font-size: 36px; 
position: absolute;
left: 40%;

html 中:

<i class="material-icons md-36">face</i>

【讨论】:

以上是关于更改 AngularJS Material 图标的图标大小的主要内容,如果未能解决你的问题,请参考以下文章

AngularJS Material Datepicker 更改格式

更改 Material UI 选项卡组件上的滚动按钮图标

REACTJs:如何更改 Material-Table 中编辑和删除图标的颜色和大小?

样式/更改 Material UI React 中的自动完成关闭图标

如何更改 Angular Material 步进器中的状态图标?

更改错误步骤的 Material UI Stepper 图标