UNPKG

gof

Version:

An extreme fast and highly scalable Firebase geo-query library.

221 lines (215 loc) 5.03 kB
/* code by: https://codepen.io/wolthers/pen/LkOLQA?q=range+slider&limit=all&type=type-pens */ .range { position: relative; } .range input[type=range] { -webkit-appearance: none; -moz-appearance: none; appearance: none; padding: 0; width: 100%; height: 22px; cursor: pointer; display: block; } .range input[type=range]:focus { outline: none; } .range input[type=range][disabled] { opacity: .3; cursor: default; } .range .rangeslider { position: relative; height: 22px; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .range .rangeslider:before { box-sizing: border-box; width: 100%; height: 4px; background: #e6e6e6; border-radius: 100px; content: ""; position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); } .range input::-webkit-slider-runnable-track { box-sizing: border-box; width: 100%; height: 4px; background: #e6e6e6; border-radius: 100px; margin: 11px 0; } .range input::-moz-range-track { box-sizing: border-box; width: 100%; height: 4px; background: #e6e6e6; border-radius: 100px; margin: 11px 0; } .range input::-ms-track { box-sizing: border-box; width: 100%; height: 4px; background: #e6e6e6; border-radius: 100px; color: transparent; padding: 11px 0; background: transparent; border-color: transparent; } .range input::-ms-fill-lower, .range input::-ms-fill-upper { box-sizing: border-box; width: 100%; height: 4px; background: #e6e6e6; border-radius: 100px; } .range input::-ms-fill-lower { background: #60cd18; } .range .rangeslider-fill-lower { background-color: #60cd18; border-radius: 100px; position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); height: 4px; will-change: width; } .range input::-webkit-slider-thumb { box-sizing: border-box; box-shadow: 0px 4px 25px rgba(0, 0, 0, 0.5); border: 6px solid #fff; height: 24px; width: 24px; border-radius: 100px; background: #333940; cursor: pointer; -webkit-appearance: none; appearance: none; -webkit-transform: translateY(-50%); transform: translateY(-50%); margin-top: 2px; } .range input::-moz-range-thumb { box-sizing: border-box; box-shadow: 0px 4px 25px rgba(0, 0, 0, 0.5); border: 6px solid #fff; height: 24px; width: 24px; border-radius: 100px; background: #333940; cursor: pointer; } .range input::-ms-thumb { box-sizing: border-box; box-shadow: 0px 4px 25px rgba(0, 0, 0, 0.5); border: 6px solid #fff; height: 24px; width: 24px; border-radius: 100px; background: #333940; cursor: pointer; } .range .rangeslider-thumb { box-sizing: border-box; box-shadow: 0px 4px 25px rgba(0, 0, 0, 0.5); border: 6px solid #fff; height: 24px; width: 24px; border-radius: 100px; background: #333940; cursor: pointer; position: absolute; -ms-touch-action: pan-x; touch-action: pan-x; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); will-change: left; } .range .range-output { position: absolute; left: 6px; top: 6px; -webkit-transform-origin: 0 0; transform-origin: 0 0; -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); transition: -webkit-transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), -webkit-transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .range .range-output .output { display: block; position: absolute; height: 60px; line-height: 60px; min-width: 32px; padding: 0 20px; top: -26px; -webkit-transform: translate(-50%, -100%); transform: translate(-50%, -100%); background: #383c42; color: #fff; border-radius: 100px; white-space: nowrap; font-weight: bold; font-size: 1.2em; text-align: center; } .range .range-output .output:before { content: ""; position: absolute; bottom: -8px; left: 50%; border: 10px solid #383c42; border-bottom: none; border-left-color: transparent; border-right-color: transparent; -webkit-transform: translateX(-50%); transform: translateX(-50%); } body { font-family: Helvetica Neue, Helvetica, Arial; font-weight: 300; } main { display: -webkit-box; display: -ms-flexbox; display: flex; height: 100vh; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; color: #333; } form { width: 350px; margin-left: auto; margin-right: auto; margin-top: 45px; } h2 { font-weight: 300; text-align: center; margin-bottom: 30px; }