UNPKG

five-bells-visualization

Version:
145 lines (126 loc) 2.67 kB
/* Copyright (c) 2014 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 */ :host { display: inline-block; white-space: nowrap; } :host(:focus) { outline: 0; } .hidden { display: none; } #checkboxContainer { position: relative; width: 18px; height: 18px; cursor: pointer; -webkit-transform: translateZ(0); transform: translateZ(0); } #checkboxContainer.labeled { display: inline-block; vertical-align: middle; } #ink { position: absolute; top: -15px; left: -15px; width: 48px; height: 48px; color: #5a5f5a; } #ink[checked] { color: #B2DFDB; } #checkbox { position: relative; box-sizing: border-box; height: 100%; border: solid 2px #5a5a5a; border-radius: 2px; pointer-events: none; -webkit-transition: background-color 140ms, border-color 140ms; transition: background-color 140ms, border-color 140ms; } /* checkbox checked animations */ :host([checked]) #checkmark { -webkit-animation: checkmark-expand 140ms ease-out forwards; animation: checkmark-expand 140ms ease-out forwards; } @-webkit-keyframes checkmark-expand { 0% { top: 9px; left: 6px; width: 0px; height: 0px; } 100% { top: -1px; left: 4px; width: 5px; height: 10px; } } @keyframes checkmark-expand { 0% { top: 9px; left: 6px; width: 0px; height: 0px; } 100% { top: -1px; left: 4px; width: 5px; height: 10px; } } #checkbox.checked { background-color: #009688; border-color: #009688; } #checkmark { -webkit-transform: rotate(45deg); transform: rotate(45deg); position: absolute; top: -1px; left: 4px; width: 5px; height: 10px; border-style: solid; border-top: none; border-left: none; border-right-width: 2px; border-bottom-width: 2px; border-color: white; } /* label */ #checkboxLabel { position: relative; display: inline-block; vertical-align: middle; padding-left: 8px; white-space: normal; pointer-events: none; } #checkboxLabel[hidden] { display: none; } /* disabled state */ :host([disabled]) { pointer-events: none; } :host([disabled]) #checkbox { opacity: 0.33; border-color: #5a5a5a; } :host([disabled][checked]) #checkbox { background-color: #5a5a5a; }