A material-design styled list item
npm install @polymer/paper-item


is an interactive list item. By default, it is a horizontal flexbox.html
Item
`Use this element with
to make Material Design styled two-line and three-line
items.`html
Show your status
Your status is visible to everyone
`To use
paper-item as a link, wrap it in an anchor tag. Since paper-item will
already receive focus, you may want to prevent the anchor tag from receiving
focus as well by setting its tabindex to -1.`html
Polymer Project
`If you are concerned about performance and want to use
paper-item in a paper-listbox
with many items, you can just use a native button with the paper-item class
applied (provided you have correctly included the shared styles):`html
`$3
The following custom properties and mixins are available for styling:
| Custom property | Description | Default |
| --- | --- | --- |
|
--paper-item-min-height | Minimum height of the item | 48px |
| --paper-item | Mixin applied to the item | {} |
| --paper-item-selected-weight | The font weight of a selected item | bold |
| --paper-item-selected | Mixin applied to selected paper-items | {} |
| --paper-item-disabled-color | The color for disabled paper-items | --disabled-text-color |
| --paper-item-disabled | Mixin applied to disabled paper-items | {} |
| --paper-item-focused | Mixin applied to focused paper-items | {} |
| --paper-item-focused-before | Mixin applied to :before focused paper-items | {} |$3
This element has
role="listitem" by default. Depending on usage, it may be more appropriate to set
role="menuitem", role="menuitemcheckbox" or role="menuitemradio".`html
Show your status
`<paper-icon-item>
is a convenience element to make an item with icon. It is an interactive list
item with a fixed-width icon area, according to Material Design. This is useful if the icons are of
varying widths, but you want the item bodies to line up. Use this like a . The child
node with the slot item-icon is placed in the icon area.`html
Favorite
Avatar
`$3
The following custom properties and mixins are available for styling:
| Custom property | Description | Default |
| --- | --- | --- |
|
--paper-item-icon-width | Width of the icon area | 56px |
| --paper-item-icon | Mixin applied to the icon area | {} |
| --paper-icon-item | Mixin applied to the item | {} |
| --paper-item-selected-weight | The font weight of a selected item | bold |
| --paper-item-selected | Mixin applied to selected paper-items | {} |
| --paper-item-disabled-color | The color for disabled paper-items | --disabled-text-color |
| --paper-item-disabled | Mixin applied to disabled paper-items | {} |
| --paper-item-focused | Mixin applied to focused paper-items | {} |
| --paper-item-focused-before | Mixin applied to :before focused paper-items | {} |$3
Distribution is now done with the
slot="item-icon" attributes (replacing the item-icon attribute):
Favorite
<paper-item-body>
Use
in a or to make two- or
three- line items. It is a flex item that is a vertical flexbox.`html
Show your status
Your status is visible to everyone
`The child elements with the
secondary attribute is given secondary text styling.$3
The following custom properties and mixins are available for styling:
| Custom property | Description | Default |
| --- | --- | --- |
|
--paper-item-body-two-line-min-height | Minimum height of a two-line item | 72px |
| --paper-item-body-three-line-min-height | Minimum height of a three-line item | 88px |
| --paper-item-body-secondary-color | Foreground color for the secondary area | --secondary-text-color |
| --paper-item-body-secondary | Mixin applied to the secondary area | {} |
See: Documentation,
Demo.
Usage
$3
`
npm install --save @polymer/paper-item
`$3
`html
Item
`
$3
`js
import {PolymerElement, html} from '@polymer/polymer';
import '@polymer/paper-item/paper-item.js';class SampleElement extends PolymerElement {
static get template() {
return html
;
}
}
customElements.define('sample-element', SampleElement);
`Contributing
If you want to send a PR to this element, here are
the instructions for running the tests and demo locally:$3
`sh
git clone https://github.com/PolymerElements/paper-item
cd paper-item
npm install
npm install -g polymer-cli
`$3
`sh
polymer serve --npm
open http://127.0.0.1:/demo/
`$3
`sh
polymer test --npm
``