|
| 1 | +--- |
| 2 | +layout: layout.njk |
| 3 | +title: 'Actionbar: Spectrum Web Components' |
| 4 | +--- |
| 5 | +## Description |
| 6 | + |
| 7 | +A `<sp-actionbar>` delivers a floating action bar that is a convenient way to deliver stateful actions in cases like selection mode. `<sp-actionbar>` can be deployed in two variants beyond the default: `[varient="fixed"]`, to position the element in relation to the page, and `[variant=sticky]`, to position the content in relation to content that may scroll. |
| 8 | + |
| 9 | +### Installation |
| 10 | + |
| 11 | +``` |
| 12 | +npm install @spectrum-web-components/actionbar |
| 13 | +
|
| 14 | +# or |
| 15 | +
|
| 16 | +yarn add @spectrum-web-components/actionbar |
| 17 | +``` |
| 18 | + |
| 19 | +## Example |
| 20 | + |
| 21 | +```html |
| 22 | +<sp-actionbar open> |
| 23 | + <sp-checkbox indeterminate>228 Selected</sp-checkbox> |
| 24 | + <div class="spectrum-ButtonGroup"> |
| 25 | + <sp-action-button quiet> |
| 26 | + <svg slot="icon" id="spectrum-icon-18-Edit" viewBox="0 0 36 36"> |
| 27 | + <path |
| 28 | + d="M33.567 8.2L27.8 2.432a1.215 1.215 0 0 0-.866-.353H26.9a1.371 1.371 0 0 0-.927.406L5.084 23.372a.99.99 0 0 0-.251.422L2.055 33.1c-.114.377.459.851.783.851a.251.251 0 0 0 .062-.007c.276-.063 7.866-2.344 9.311-2.778a.972.972 0 0 0 .414-.249l20.888-20.889a1.372 1.372 0 0 0 .4-.883 1.221 1.221 0 0 0-.346-.945zM11.4 29.316c-2.161.649-4.862 1.465-6.729 2.022l2.009-6.73z" |
| 29 | + ></path> |
| 30 | + </svg> |
| 31 | + </sp-action-button> |
| 32 | + <sp-action-button quiet> |
| 33 | + <svg slot="icon" id="spectrum-icon-18-More" viewBox="0 0 36 36"> |
| 34 | + <circle cx="17.8" cy="18.2" r="3.4"></circle> |
| 35 | + <circle cx="29.5" cy="18.2" r="3.4"></circle> |
| 36 | + <circle cx="6.1" cy="18.2" r="3.4"></circle> |
| 37 | + </svg> |
| 38 | + </sp-action-button> |
| 39 | + </div> |
| 40 | +</sp-actionbar> |
| 41 | +``` |
| 42 | + |
| 43 | +## Variants |
| 44 | + |
| 45 | +### Fixed |
| 46 | + |
| 47 | +When using `[variant="fixed"]`, the `<sp-actionbar>` will display by default at the bottom left of the window and can be customized via CSS from the outside. |
| 48 | + |
| 49 | +```html |
| 50 | +<h4>Look down and to the left when toggling.</h4> |
| 51 | +<sp-actionbar variant="fixed"> |
| 52 | + <sp-checkbox indeterminate>228 Selected</sp-checkbox> |
| 53 | +</sp-actionbar> |
| 54 | +<sp-button |
| 55 | + onclick="javascript:this.previousElementSibling.open = !this.previousElementSibling.open;" |
| 56 | +> |
| 57 | + Toggle fixed actionbar |
| 58 | +</sp-button> |
| 59 | +``` |
| 60 | + |
| 61 | +### Sticky |
| 62 | + |
| 63 | +When using `[variant="sticky"]`, be sure you've spent some time touching up on [how `sticky` really works](https://medium.com/@elad/css-position-sticky-how-it-really-works-54cd01dc2d46) to ensure the most successful delivery of your content. |
| 64 | + |
| 65 | +```html |
| 66 | +<section style="position: relative; max-height: 6em; overflow: auto;"> |
| 67 | + <h4>Scroll down for toggle button</h4> |
| 68 | + <sp-actionbar variant="sticky" style="top: 0;"> |
| 69 | + <sp-checkbox indeterminate>228 Selected</sp-checkbox> |
| 70 | + </sp-actionbar> |
| 71 | + <p> |
| 72 | + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod |
| 73 | + tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim |
| 74 | + veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea |
| 75 | + commodo consequat. Duis aute irure dolor in reprehenderit in voluptate |
| 76 | + velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint |
| 77 | + occaecat cupidatat non proident, sunt in culpa qui officia deserunt |
| 78 | + mollit anim id est laborum. |
| 79 | + </p> |
| 80 | + <sp-button |
| 81 | + onclick="javascript:this.previousElementSibling.previousElementSibling.open = !this.previousElementSibling.previousElementSibling.open;" |
| 82 | + > |
| 83 | + Toggle sticky actionbar |
| 84 | + </sp-button> |
| 85 | +</section> |
| 86 | +``` |
| 87 | + |
0 commit comments