UNPKG

@opensig/opendesign

Version:

184 lines (163 loc) 4.95 kB
.o-slider { --_input-text-align: center; --slider-height: 32px; --slider-runway-wrap-padding: 0 4px; --slider-runway-wrap-bg: var(--o-color-control4); --slider-runway-height: 4px; --slider-bar-height: 4px; --slider-bar-bg: var(--o-color-control2); --slider-btn-wrap-width: 60px; --slider-btn-width: 16px; --slider-btn-bg: var(--o-color-info1-inverse); --slider-btn-border: 4px solid var(--o-color-control4); --slider-btn-shadow: var(--o-shadow-1); --slider-btn-cursor: pointer; --slider-circle-width: 6px; --slider-circle-bg: var(--o-color-main1); --slider-stop-width: 2px; --slider-stop-bg: var(--o-color-info4); --slider-marks-font-size: var(--o-font_size-tip1); --slider-marks-line-height: var(--o-line_height-tip1); --slider-marks-gap: 8px; --slider-input-width: 60px; --slider-input-unit-gap: 8px; --slider-popover-font-size: var(--o-font_size-text1); --slider-popover-line-height: var(--o-line_height-text1); --slider-unit-font-size: var(--o-font_size-tip2); --slider-unit-line-height: var(--o-line_height-tip2); --sldier-unit-color: var(--o-color-info3); } .o-slider-with-input { --slider-runway-wrap-gap: 12px; } .o-slider-with-stops { --slider-bar-bg-image: var(--o-color-main2); --slider-btn-width: 20px; --slider-runway-height: 8px; --slider-bar-height: 10px; } .o-slider-disabled { --slider-btn-cursor: not-allowed; --slider-circle-bg: var(--o-color-control4); } .o-slider-stop-reached { --slider-stop-bg: var(--o-color-info1-inverse); } .o-slider-btn-wrap-hover { --slider-btn-width: 24px; } .o-slider-popover { --popup-padding: 2px 6px; } .o-slider { display: flex; align-items: center; width: 100%; height: var(--slider-height); } .o-slider-runway-wrap { width: 100%; margin-right: var(--slider-runway-wrap-gap); padding: var(--slider-runway-wrap-padding); background-color: var(--slider-runway-wrap-bg); border-radius: calc(var(--slider-runway-height) / 2); } .o-slider-runway { position: relative; height: var(--slider-runway-height); cursor: var(--slider-btn-cursor); } .o-slider-bar { position: absolute; top: calc(var(--slider-runway-height) / 2 - var(--slider-bar-height) / 2); height: var(--slider-bar-height); background-color: var(--slider-bar-bg); background-image: var(--slider-bar-bg-image); border-top-left-radius: calc(var(--slider-bar-height) / 2); border-bottom-left-radius: calc(var(--slider-bar-height) / 2); } .o-slider-btn-wrap { display: flex; align-items: center; justify-content: center; position: absolute; z-index: 1; top: calc(var(--slider-runway-height) / 2 - var(--slider-btn-width) / 2); width: var(--slider-btn-wrap-width); transform: translateX(-50%); transition: top var(--o-duration-m1) var(--o-easing-linear); user-select: none; outline: none; } .o-slider-btn { display: flex; align-items: center; justify-content: center; width: var(--slider-btn-width); height: var(--slider-btn-width); background-color: var(--slider-btn-bg); border-radius: 50%; box-shadow: var(--slider-btn-shadow); cursor: var(--slider-btn-cursor); transition: width var(--o-duration-m1) var(--o-easing-linear), height var(--o-duration-m1) var(--o-easing-linear), border-width var(--o-duration-m1) var(--o-easing-linear), box-shadow var(--o-duration-m1) var(--o-easing-linear); } .o-slider-btn-hover { border: var(--slider-btn-border); box-shadow: var(--slider-btn-shadow); } .o-slider-circle { width: var(--slider-circle-width); height: var(--slider-circle-width); background-color: var(--slider-circle-bg); border-radius: 50%; } .o-slider-popover { font-size: var(--slider-popover-font-size); line-height: var(--slider-popover-line-height); } .o-slider-stop { position: absolute; top: calc(var(--slider-runway-height) / 2 - var(--slider-stop-width) / 2); height: var(--slider-stop-width); width: var(--slider-stop-width); background-color: var(--slider-stop-bg); border-radius: 50%; transform: translateX(-50%); } .o-slider-marks-text { position: absolute; margin-top: var(--slider-marks-gap); font-size: var(--slider-marks-font-size); line-height: var(--slider-marks-line-height); transform: translateX(-50%); } .o-slider-input-wrap { flex-shrink: 0; display: flex; align-items: center; } .o-slider-input { width: var(--slider-input-width); } .o-slider-input-unit { margin-left: var(--slider-input-unit-gap); font-size: var(--slider-unit-font-size); line-height: var(--slider-unit-line-height); color: var(--sldier-unit-color); } @media (max-width: 1680px) { .o-slider { --slider-popover-font-size: var(--o-font_size-tip1); --slider-popover-line-height: var(--o-line_height-tip1); } } @media (max-width: 840px) { .o-slider { --slider-btn-width: 24px; --slider-stop-width: 3px; } .o-slider-with-stops { --slider-runway-height: 12px; --slider-bar-height: 16px; } }