md-button
is an HTML <button>
or <a>
tag enhanced with styling and animation to match the
Material Design button spec.
Users should employ a button element (<button>
) when clicking triggers some action in the current
view without navigating. An anchor element (<a>
) should be used when clicking navigates
the user to another URL. Depending on which element is used, the component will either be an
instance of MdButton
or MdAnchor
. Visually, the two are identical.
There are five types of buttons:
- Flat buttons -
md-button
- Rectangular button
- Defaults to white background
- No box shadow
- Raised buttons -
md-raised-button
- Rectangular button
- Defaults to white background
- Box shadow applied
- Icon buttons -
md-icon-button
- Circular button
- Transparent background
- 40 by 40 px
- Floating Action Buttons (FABs) -
md-fab
- Circular button
- Defaults background to "accent" palette defined in theme
- Box shadow applied
- 56 by 56 px
- Mini Floating Action Buttons (Mini FABs) -
md-mini-fab
- Circular button
- Defaults background to "accent" palette defined in theme
- Box shadow applied
- 40 by 40 px
Each is an attribute directive that you can add to a button
or a
tag. You can provide custom content to the button by inserting it
between the tags, as you would with a normal button.
Example:
<button md-button>FLAT</button>
<button md-raised-button>RAISED</button>
<button md-icon-button>
<md-icon class="md-24">favorite</md-icon>
</button>
<button md-fab>
<md-icon class="md-24">add</md-icon>
</button>
<button md-mini-fab>
<md-icon class="md-24">add</md-icon>
</button>
Output:
All button types can be themed to match your "primary" palette, your "accent" palette, or your "warn" palette using the color
attribute.
Simply pass in the palette name.
In flat buttons, the palette chosen will affect the text color, while in other buttons, it affects the background.
Example:
<button md-raised-button color="primary">PRIMARY</button>
<button md-raised-button color="accent">ACCENT</button>
<button md-raised-button color="warn">WARN</button>
Output:
You can disable any button type through the native disabled
property. You can add it directly, or bind it to a property on your
component class.
<button md-button disabled>off</button>
<button md-raised-button [disabled]="isDisabled">off</button>
<button md-mini-fab [disabled]="isDisabled">check circle</button>
Output:
- In high contrast mode, a strong border is added to the button to make it easier to see.
- Button focus events originating from the keyboard will retain focus styles, while button focus events from the mouse will not.
- As
md-button
is added to an existingbutton
ora
tag, it enjoys all the accessibility natively built into these elements.
We will also be adding ink ripples to buttons in an upcoming milestone.
Properties:
Name | Type | Description |
---|---|---|
color |
`"primary" | "accent" |
disabled |
boolean | Whether or not the button is disabled |