UNPKG

xdesign-vue-next

Version:

XDesign Component for vue-next

236 lines (235 loc) 6.81 kB
.x-timeline { font: var(--td-font-body-medium); color: var(--td-text-color-primary); box-sizing: border-box; margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; } .x-timeline-item { min-height: 72px; display: flex; flex-direction: row; position: relative; } .x-timeline-item__label.x-timeline-item__label--alternate { position: absolute; } .x-timeline-item__wrapper { width: 8px; position: relative; } .x-timeline-item__wrapper .x-timeline-item__dot { box-sizing: unset; position: absolute; width: 4px; height: 4px; border: 2px solid transparent; border-radius: 50%; top: 8px; } .x-timeline-item__wrapper .x-timeline-item__dot--primary { border-color: var(--td-brand-color); } .x-timeline-item__wrapper .x-timeline-item__dot--default { border-color: var(--td-component-border); } .x-timeline-item__wrapper .x-timeline-item__dot--success { border-color: var(--td-success-color); } .x-timeline-item__wrapper .x-timeline-item__dot--warning { border-color: var(--td-warning-color); } .x-timeline-item__wrapper .x-timeline-item__dot--error { border-color: var(--td-error-color); } .x-timeline-item__wrapper .x-timeline-item__dot--custom { position: relative; left: 50%; transform: translateX(-50%); top: 4px; border: 0; } .x-timeline-item__wrapper .x-timeline-item__dot--custom .x-timeline-item__dot-content { position: absolute; left: 50%; transform: translateX(-50%); top: 0; } .x-timeline-item__wrapper .x-timeline-item__tail { position: absolute; border-left: 2px solid transparent; left: 50%; height: calc(100% - (8px * 2 + 8px)); bottom: 0; transform: translateX(-50%); padding-bottom: var(--td-comp-size-s); border-color: var(--td-component-border); box-sizing: border-box; } .x-timeline-item__wrapper .x-timeline-item__tail--theme-dot { border-style: dashed; border-right: 0; } .x-timeline-item__label { color: var(--td-text-color-secondary); font-size: var(--td-font-size-body-medium); } .x-timeline-item__content { flex: 1; padding-left: var(--td-comp-margin-l); font-size: var(--td-font-size-body-large); } .x-timeline-item--last .x-timeline-item__tail { display: none; } .x-timeline-label.x-timeline-label--alternate.x-timeline-left .x-timeline-item__label { text-align: right; left: 0; } .x-timeline-label.x-timeline-label--alternate.x-timeline-left .x-timeline-item__wrapper { margin-left: 100px; } .x-timeline-label.x-timeline-label--alternate.x-timeline-right .x-timeline-item__label { text-align: left; right: 0; } .x-timeline-label.x-timeline-label--alternate.x-timeline-right .x-timeline-item__wrapper { margin-right: 100px; } .x-timeline-right .x-timeline-item { flex-direction: row-reverse; } .x-timeline-right .x-timeline-item__content { text-align: right; padding-left: 0; padding-right: var(--td-comp-margin-l); } .x-timeline-alternate .x-timeline-item-left { margin-left: calc(50% - (8px / 2)); } .x-timeline-alternate .x-timeline-item-right { text-align: right; flex-direction: row-reverse; margin-right: calc(50% - (8px / 2)); } .x-timeline-alternate .x-timeline-item-right .x-timeline-item__content { padding-right: var(--td-comp-margin-l); padding-left: 0; } .x-timeline-label.x-timeline-alternate .x-timeline-item__label { width: 100%; } .x-timeline-label.x-timeline-alternate .x-timeline-item-left .x-timeline-item__label--alternate { left: 0; transform: translateX(-100%); text-align: right; padding-right: var(--td-comp-margin-l); } .x-timeline-label.x-timeline-alternate .x-timeline-item-right .x-timeline-item__label--alternate { right: 0; transform: translateX(100%); text-align: left; padding-left: var(--td-comp-margin-l); } .x-timeline-horizontal { min-height: 200px; flex-direction: row; align-items: center; } .x-timeline-horizontal .x-timeline-item { flex-direction: column; padding-right: 8px; min-width: 160px; } .x-timeline-horizontal .x-timeline-item__wrapper { width: 100%; height: 8px; } .x-timeline-horizontal .x-timeline-item__wrapper .x-timeline-item__dot { position: absolute; top: 50%; transform: translateY(-50%); left: unset; width: 4px; height: 4px; border-radius: 50%; } .x-timeline-horizontal .x-timeline-item__wrapper .x-timeline-item__dot--custom { position: relative; top: 50%; transform: translateY(-50%); border: 0; } .x-timeline-horizontal .x-timeline-item__wrapper .x-timeline-item__dot--custom .x-timeline-item__dot-content { position: absolute; left: 0; transform: translateY(-50%); top: 50%; } .x-timeline-horizontal .x-timeline-item__wrapper .x-timeline-item__tail { left: calc(8px + var(--td-comp-margin-s)); top: 50%; transform: translateY(-50%); width: calc(100% - calc(8px + var(--td-comp-margin-s))); border: 0; border-top: 2px solid transparent; padding-bottom: 0; border-color: var(--td-component-border); } .x-timeline-horizontal .x-timeline-item__wrapper .x-timeline-item__tail--theme-dot { border-style: dashed; border-right: 0; } .x-timeline-horizontal .x-timeline-item__content { padding-left: unset; padding-top: var(--td-comp-margin-l); flex: unset; } .x-timeline-vertical .x-timeline-item__content { padding-bottom: var(--td-comp-margin-l); } .x-timeline-label.x-timeline-horizontal.x-timeline-top .x-timeline-item__label--alternate { top: 0; width: 100%; transform: translateY(-100%); padding-bottom: 0; } .x-timeline-label.x-timeline-horizontal.x-timeline-bottom .x-timeline-item { flex-direction: column-reverse; } .x-timeline-label.x-timeline-horizontal.x-timeline-bottom .x-timeline-item__wrapper { padding-top: 0; } .x-timeline-label.x-timeline-horizontal.x-timeline-bottom .x-timeline-item__label--alternate { padding-top: var(--td-comp-margin-l); bottom: 0; width: 100%; transform: translateY(100%); } .x-timeline-label.x-timeline-horizontal.x-timeline-bottom .x-timeline-item__content { padding-top: 0; padding-bottom: var(--td-comp-margin-l); } .x-timeline-label.x-timeline-horizontal.x-timeline-alternate .x-timeline-item-top .x-timeline-item__label--alternate { top: 0; width: 100%; transform: translateY(-100%); padding-bottom: var(--td-comp-margin-l); } .x-timeline-label.x-timeline-horizontal.x-timeline-alternate .x-timeline-item-bottom { flex-direction: column-reverse; position: relative; transform: translateY(calc(-100% + 8px)); } .x-timeline-label.x-timeline-horizontal.x-timeline-alternate .x-timeline-item-bottom .x-timeline-item__content { padding-bottom: var(--td-comp-margin-l); padding-top: unset; } .x-timeline-label.x-timeline-horizontal.x-timeline-alternate .x-timeline-item-bottom .x-timeline-item__label--alternate { bottom: 0; transform: translateY(100%); padding-top: var(--td-comp-margin-l); }