3 Copyright (c) 2015 The Polymer Project Authors. All rights reserved.
4 This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
5 The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
6 The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
7 Code distributed by Google as part of the polymer project is also
8 subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
11 <link rel=
"import" href=
"../polymer/polymer.html">
12 <link rel=
"import" href=
"../iron-icon/iron-icon.html">
13 <link rel=
"import" href=
"../iron-flex-layout/classes/iron-flex-layout.html">
14 <link rel=
"import" href=
"../paper-styles/default-theme.html">
15 <link rel=
"import" href=
"../paper-styles/color.html">
16 <link rel=
"import" href=
"../paper-material/paper-material.html">
17 <link rel=
"import" href=
"../paper-ripple/paper-ripple.html">
18 <link rel=
"import" href=
"../paper-behaviors/paper-button-behavior.html">
21 Material Design: <a href="http://www.google.com/design/spec/components/buttons.html">Button</a>
23 `paper-fab` is a floating action button. It contains an image placed in the center and
24 comes in two sizes: regular size and a smaller size by applying the attribute `mini`. When
25 the user touches the button, a ripple effect emanates from the center of the button.
27 You may import `iron-icons` to use with this element, or provide a URL to a custom icon.
28 See `iron-iconset` for more information about how to use a custom icon set.
32 <link href="path/to/iron-icons/iron-icons.html" rel="import">
34 <paper-fab icon="add"></paper-fab>
35 <paper-fab mini icon="favorite"></paper-fab>
36 <paper-fab src="star.png"></paper-fab>
41 The following custom properties and mixins are available for styling:
43 Custom property | Description | Default
44 ----------------|-------------|----------
45 `--paper-fab-background` | The background color of the button | `--accent-color`
46 `--paper-fab-keyboard-focus-background` | The background color of the button when focused | `--paper-pink-900`
47 `--paper-fab-disabled-background` | The background color of the button when it's disabled | `--paper-grey-300`
48 `--paper-fab-disabled-text` | The text color of the button when it's disabled | `--paper-grey-500`
49 `--paper-fab` | Mixin applied to the button | `{}`
50 `--paper-fab-mini` | Mixin applied to a mini button | `{}`
51 `--paper-fab-disabled` | Mixin applied to a disabled button | `{}`
58 <dom-module id=
"paper-fab">
62 display: inline-block;
65 -moz-user-select: none;
66 -ms-user-select: none;
67 -webkit-user-select: none;
71 box-sizing: border-box;
75 background: var(--paper-fab-background, --accent-color);
76 color: var(--text-primary-color);
90 @apply(--paper-fab-mini);
94 color: var(--paper-fab-disabled-text, --paper-grey-
500);
95 background: var(--paper-fab-disabled-background, --paper-grey-
300);
96 @apply(--paper-fab-disabled);
100 border-radius: inherit;
101 @apply(--layout-fit);
102 @apply(--layout-vertical);
103 @apply(--layout-center-center);
107 background: var(--paper-fab-keyboard-focus-background, --paper-pink-
900);
111 <paper-ripple></paper-ripple>
112 <paper-material class$=
"[[_computeContentClass(receivedFocusFromKeyboard)]]" elevation=
"[[_elevation]]" animated
>
113 <iron-icon id=
"icon" src=
"[[src]]" icon=
"[[icon]]"></iron-icon>
122 Polymer
.PaperButtonBehavior
127 * The URL of an image for the icon. If the src property is specified,
128 * the icon property should not be.
140 * Specifies the icon name or index in the set of icons available in
141 * the icon's icon set. If the icon property is specified,
142 * the src property should not be.
154 * Set this to true to style this is a "mini" FAB.
166 _computeContentClass: function(receivedFocusFromKeyboard
) {
167 var className
= 'content';
168 if (receivedFocusFromKeyboard
) {
169 className
+= ' keyboard-focus';