Blame view

bower_components/paper-card/paper-card.html 6.07 KB
73bcce88   luigser   COMPONENTS
1
2
3
4
5
6
7
8
9
10
11
  <!--
  @license
  Copyright (c) 2015 The Polymer Project Authors. All rights reserved.
  This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
  The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
  The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
  Code distributed by Google as part of the polymer project is also
  subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
  -->
  
  <link rel="import" href="../polymer/polymer.html">
e619a3b0   Luigi Serra   Controllet cross ...
12
  <link rel="import" href="../iron-flex-layout/iron-flex-layout.html">
a1a3bc73   Luigi Serra   graphs updates
13
14
15
  <link rel="import" href="../iron-image/iron-image.html">
  <link rel="import" href="../paper-material/paper-material.html">
  <link rel="import" href="../paper-styles/default-theme.html">
73bcce88   luigser   COMPONENTS
16
17
  
  <!--
f748e9cf   Luigi Serra   new controllet an...
18
  Material design: [Cards](https://www.google.com/design/spec/components/cards.html)
73bcce88   luigser   COMPONENTS
19
20
21
22
23
24
25
26
27
28
29
30
  
  `paper-card` is a container with a drop shadow.
  
  Example:
  
      <paper-card heading="Card Title">
        <div class="card-content">Some content</div>
        <div class="card-actions">
          <paper-button>Some action</paper-button>
        </div>
      </paper-card>
  
dbc787cf   Luigi Serra   Controllet cross ...
31
32
33
34
35
  Example - top card image:
  
      <paper-card heading="Card Title" image="/path/to/image.png">
        ...
      </paper-card>
f748e9cf   Luigi Serra   new controllet an...
36
  
73bcce88   luigser   COMPONENTS
37
38
39
40
41
42
43
44
45
46
  ### Accessibility
  
  By default, the `aria-label` will be set to the value of the `heading` attribute.
  
  ### Styling
  
  The following custom properties and mixins are available for styling:
  
  Custom property | Description | Default
  ----------------|-------------|----------
a1a3bc73   Luigi Serra   graphs updates
47
  `--paper-card-background-color` | The background color of the card | `--primary-background-color`
73bcce88   luigser   COMPONENTS
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
  `--paper-card-header-color` | The color of the header text | `#000`
  `--paper-card-header` | Mixin applied to the card header section | `{}`
  `--paper-card-header-text` | Mixin applied to the title in the card header section | `{}`
  `--paper-card-header-image` | Mixin applied to the image in the card header section | `{}`
  `--paper-card-header-image-text` | Mixin applied to the text overlapping the image in the card header section | `{}`
  `--paper-card-content` | Mixin applied to the card content section| `{}`
  `--paper-card-actions` | Mixin applied to the card action section | `{}`
  `--paper-card` | Mixin applied to the card | `{}`
  
  @group Paper Elements
  @element paper-card
  @demo demo/index.html
  -->
  
  <dom-module id="paper-card">
    <template>
f748e9cf   Luigi Serra   new controllet an...
64
      <style include="paper-material">
73bcce88   luigser   COMPONENTS
65
66
67
68
        :host {
          display: inline-block;
          position: relative;
          box-sizing: border-box;
a1a3bc73   Luigi Serra   graphs updates
69
          background-color: var(--paper-card-background-color, --primary-background-color);
73bcce88   luigser   COMPONENTS
70
          border-radius: 2px;
a1a3bc73   Luigi Serra   graphs updates
71
  
73bcce88   luigser   COMPONENTS
72
73
74
          @apply(--paper-card);
        }
  
73bcce88   luigser   COMPONENTS
75
76
77
78
79
80
81
        /* IE 10 support for HTML5 hidden attr */
        [hidden] {
          display: none !important;
        }
  
        .header {
          position: relative;
f748e9cf   Luigi Serra   new controllet an...
82
83
84
          border-top-left-radius: inherit;
          border-top-right-radius: inherit;
          overflow: hidden;
a1a3bc73   Luigi Serra   graphs updates
85
  
73bcce88   luigser   COMPONENTS
86
87
88
          @apply(--paper-card-header);
        }
  
a1a3bc73   Luigi Serra   graphs updates
89
        .header iron-image {
73bcce88   luigser   COMPONENTS
90
          width: 100%;
a1a3bc73   Luigi Serra   graphs updates
91
          --iron-image-width: 100%;
73bcce88   luigser   COMPONENTS
92
          pointer-events: none;
a1a3bc73   Luigi Serra   graphs updates
93
  
73bcce88   luigser   COMPONENTS
94
95
96
97
98
99
          @apply(--paper-card-header-image);
        }
  
        .header .title-text {
          padding: 16px;
          font-size: 24px;
a1a3bc73   Luigi Serra   graphs updates
100
          font-weight: 400;
73bcce88   luigser   COMPONENTS
101
          color: var(--paper-card-header-color, #000);
a1a3bc73   Luigi Serra   graphs updates
102
  
73bcce88   luigser   COMPONENTS
103
104
105
106
107
108
          @apply(--paper-card-header-text);
        }
  
        .header .title-text.over-image {
          position: absolute;
          bottom: 0px;
a1a3bc73   Luigi Serra   graphs updates
109
  
73bcce88   luigser   COMPONENTS
110
111
112
113
114
115
          @apply(--paper-card-header-image-text);
        }
  
        :host ::content .card-content {
          padding: 16px;
          position:relative;
a1a3bc73   Luigi Serra   graphs updates
116
  
73bcce88   luigser   COMPONENTS
117
118
119
120
121
122
123
          @apply(--paper-card-content);
        }
  
        :host ::content .card-actions {
          border-top: 1px solid #e8e8e8;
          padding: 5px 16px;
          position:relative;
a1a3bc73   Luigi Serra   graphs updates
124
  
73bcce88   luigser   COMPONENTS
125
126
127
128
          @apply(--paper-card-actions);
        }
      </style>
  
e619a3b0   Luigi Serra   Controllet cross ...
129
      <div class="header">
a1a3bc73   Luigi Serra   graphs updates
130
        <iron-image hidden$="[[!image]]" src="[[image]]" preload$="[[preloadImage]]" fade$="[[fadeImage]]"></iron-image>
e619a3b0   Luigi Serra   Controllet cross ...
131
132
        <div hidden$="[[!heading]]" class$="[[_computeHeadingClass(image)]]">[[heading]]</div>
      </div>
73bcce88   luigser   COMPONENTS
133
  
e619a3b0   Luigi Serra   Controllet cross ...
134
      <content></content>
73bcce88   luigser   COMPONENTS
135
136
    </template>
  
a1a3bc73   Luigi Serra   graphs updates
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
    <script>
      Polymer({
        is: 'paper-card',
  
        properties: {
          /**
           * The title of the card.
           */
          heading: {
            type: String,
            value: '',
            observer: '_headingChanged'
          },
  
          /**
           * The url of the title image of the card.
           */
          image: {
            type: String,
            value: ''
          },
  
          /**
           * When `true`, any change to the image url property will cause the
           * `placeholder` image to be shown until the image is fully rendered.
           */
          preloadImage: {
            type: Boolean,
            value: false
          },
  
          /**
           * When `preloadImage` is true, setting `fadeImage` to true will cause the
           * image to fade into place.
           */
          fadeImage: {
            type: Boolean,
            value: false
          },
  
          /**
           * The z-depth of the card, from 0-5.
           */
          elevation: {
            type: Number,
            value: 1,
            reflectToAttribute: true
          },
  
          /**
           * Set this to true to animate the card shadow when setting a new
           * `z` value.
           */
          animatedShadow: {
            type: Boolean,
            value: false
          },
  
          /**
           * Read-only property used to pass down the `animatedShadow` value to
           * the underlying paper-material style (since they have different names).
           */
          animated: {
            type: Boolean,
            reflectToAttribute: true,
            readOnly: true,
            computed: '_computeAnimated(animatedShadow)'
          }
73bcce88   luigser   COMPONENTS
205
206
        },
  
a1a3bc73   Luigi Serra   graphs updates
207
208
209
        _headingChanged: function(heading) {
          var label = this.getAttribute('aria-label');
          this.setAttribute('aria-label', heading);
73bcce88   luigser   COMPONENTS
210
211
        },
  
a1a3bc73   Luigi Serra   graphs updates
212
213
214
215
216
        _computeHeadingClass: function(image) {
          var cls = 'title-text';
          if (image)
            cls += ' over-image';
          return cls;
f748e9cf   Luigi Serra   new controllet an...
217
218
        },
  
a1a3bc73   Luigi Serra   graphs updates
219
220
        _computeAnimated: function(animatedShadow) {
          return animatedShadow;
73bcce88   luigser   COMPONENTS
221
        }
a1a3bc73   Luigi Serra   graphs updates
222
223
224
      });
    </script>
  </dom-module>