UNPKG

xdesign-vue-next

Version:

XDesign Component for vue-next

201 lines (200 loc) 4.63 kB
.x-slider__input-container { display: flex; align-items: center; margin-left: var(--td-comp-margin-xxl); } .x-slider__input-container.is-vertical { padding-top: var(--td-comp-paddingTB-l); margin-left: 0px; } .x-slider__input-container .x-slider__center-line { width: var(--td-size-4); height: 1px; background: rgba(0, 0, 0, 0.9); margin: 0 var(--td-comp-margin-s); } .x-slider { font: var(--td-font-body-medium); color: var(--td-text-color-primary); box-sizing: border-box; margin: 0; padding: 0; list-style: none; height: calc(var(--td-comp-paddingTB-xs) * 2 + var(--td-size-2)); width: 100%; position: relative; padding: var(--td-comp-paddingTB-xs) 0; } .x-slider__container { width: 100%; display: flex; justify-content: center; align-items: center; } .x-slider__container.is-vertical { height: 100%; flex-direction: column; } .x-slider__rail { position: absolute; width: 100%; height: var(--td-size-2); background-color: var(--td-bg-color-secondarycomponent); transition: 0.2s linear; border-radius: var(--td-radius-round); } .x-slider__rail:hover { background-color: var(--td-bg-color-secondarycomponent-hover); } .x-slider__track { position: absolute; height: var(--td-size-2); background-color: var(--td-brand-color); right: auto; border-radius: var(--td-radius-round); } .x-slider__step { position: absolute; width: 100%; height: var(--td-size-2); cursor: pointer; } .x-slider__button { width: var(--td-comp-size-xxxs); height: var(--td-comp-size-xxxs); border: 2px solid var(--td-brand-color); background-color: #fff; border-radius: var(--td-radius-circle); transition: 0.2s; user-select: none; box-sizing: border-box; box-shadow: var(--td-shadow-1); } .x-slider__button--dragging { box-shadow: 0 0 0px 2px var(--td-brand-color-focus); } .x-slider__button:hover { background-color: var(--td-gray-color-1); } .x-slider__button-wrapper { position: absolute; z-index: 2; top: 50%; transform: translate(-50%, -50%); background-color: transparent; text-align: center; user-select: none; line-height: normal; outline: none; cursor: pointer; display: flex; align-items: center; } .x-slider__stop { position: absolute; width: 1px; height: var(--td-size-2); background-color: var(--td-bg-color-secondarycomponent); top: 4px; } .x-slider__mark { position: absolute; top: 2px; left: 0; width: 100%; } .x-slider__mark-text { position: absolute; display: inline-block; font: var(--td-font-body-small); color: var(--td-text-color-primary); top: calc(var(--td-size-2) + var(--td-comp-paddingTB-xs) + 2px); transform: translateX(-50%); cursor: pointer; } .x-slider__mark-text:first-child { transform: translateX(0%); } .x-slider__mark-text:last-child { transform: translateX(-100%); } .x-slider--vertical { height: 100%; padding: 0; display: flex; justify-content: center; position: relative; } .x-slider--vertical .x-slider__rail { width: var(--td-size-2); height: 100%; } .x-slider--vertical .x-slider__track { width: var(--td-size-2); top: auto; } .x-slider--vertical .x-slider__step { width: var(--td-size-2); height: 100%; } .x-slider--vertical .x-slider__handle { margin-top: -6px; margin-left: -5px; top: auto; transform: translateY(50%); } .x-slider--vertical .x-slider__mark { top: 0; left: 12px; width: 18px; height: 100%; } .x-slider--vertical .x-slider__stop { width: var(--td-size-2); height: 1px; left: 4px; background-color: var(--td-bg-color-secondarycomponent); } .x-slider--vertical .x-slider__mark-text { transform: translateY(-50%); margin-top: 0; margin-left: var(--td-comp-margin-xxs); } .x-slider--vertical .x-slider__button-wrapper { top: auto; position: absolute; z-index: 2; left: 50%; transform: translate(-50%, 50%); background-color: transparent; text-align: center; user-select: none; line-height: normal; outline: none; cursor: pointer; display: flex; align-items: center; } .x-is-disabled { cursor: not-allowed; } .x-is-disabled .x-slider__track { background-color: var(--td-brand-color-disabled); } .x-is-disabled .x-slider__rail { background-color: var(--td-bg-color-component-disabled); } .x-is-disabled .x-slider__handle { border: 2px solid var(--td-brand-color-disabled); } .x-is-disabled .x-slider__button { border-color: var(--td-brand-color-disabled); outline: none; } .x-is-disabled .x-slider__mark-text { color: var(--td-text-color-disabled); cursor: not-allowed; } .x-is-disabled .x-slider__button-wrapper { cursor: not-allowed; }