UNPKG

xdesign-vue-next

Version:

XDesign Component for vue-next

605 lines (604 loc) 15.9 kB
a.x-menu__item { text-decoration: none; color: unset; } a.x-menu__item:hover, a.x-menu__item:active { color: inherit; } .x-head-menu { font: var(--td-font-body-medium); color: var(--td-text-color-primary); box-sizing: border-box; margin: 0; padding: 0; list-style: none; position: relative; width: 100%; background-color: var(--td-bg-color-container); } .x-head-menu__inner { display: flex; height: var(--td-comp-size-xxxl); } .x-head-menu__inner li + li { margin-left: var(--td-comp-margin-s); } .x-head-menu__inner .x-menu:first-child { margin-left: var(--td-comp-margin-xxl); } .x-head-menu .x-menu__logo:not(:empty) { height: 100%; margin-right: var(--td-comp-margin-xxxl); } .x-head-menu .x-menu { flex: 1; display: flex; align-items: center; } .x-head-menu .x-menu__operations:not(:empty) { position: relative; display: flex; align-items: center; height: var(--td-comp-size-xxxl); line-height: 64px; text-align: right; margin-right: var(--td-comp-margin-s); overflow: hidden; } .x-head-menu .x-menu__operations-icon { width: var(--td-comp-size-m); height: var(--td-comp-size-m); padding: var(--td-comp-paddingTB-s) var(--td-comp-paddingLR-s); line-height: var(--td-comp-size-m); box-sizing: border-box; } .x-head-menu .x-submenu > .x-menu__item { overflow: unset; } .x-head-menu .x-submenu > .x-menu__item::before { content: ""; display: block; position: absolute; bottom: -20px; left: 0; right: 0; height: 20px; } .x-head-menu .x-menu__item { height: var(--td-comp-size-m); line-height: var(--td-comp-size-m); padding: 0 var(--td-comp-paddingLR-l); justify-content: center; transition: all 0.28s cubic-bezier(0.645, 0.045, 0.355, 1); } .x-head-menu__submenu { border-top: 1px solid var(--td-component-stroke); padding-left: 0; } .x-head-menu .x-fake-arrow { margin-left: var(--td-comp-margin-m); } .x-default-menu { font: var(--td-font-body-medium); color: var(--td-text-color-primary); box-sizing: border-box; margin: 0; padding: 0; list-style: none; position: relative; width: 232px; display: inline-block; background: var(--td-bg-color-container); transition: width 0.28s cubic-bezier(0.645, 0.045, 0.355, 1); white-space: nowrap; } .x-default-menu .x-menu__item { color: var(--td-text-color-secondary); } .x-default-menu.x-is-collapsed { width: 64px; } .x-default-menu.x-is-collapsed .x-menu .x-menu__item { padding: 0 0px; justify-content: center; } .x-default-menu.x-is-collapsed .x-menu .x-menu__item .x-menu__item-link { opacity: 0; content: ""; position: absolute; top: 0; bottom: 0; left: 0; right: 0; } .x-default-menu.x-is-collapsed .x-fake-arrow { display: none; } .x-default-menu.x-is-collapsed .x-menu__item { text-overflow: initial; } .x-default-menu.x-is-collapsed .x-menu__item.x-is-active.x-is-opened { color: var(--td-brand-color); background-color: var(--td-brand-color-light); } .x-default-menu.x-is-collapsed .x-menu__item.x-is-active.x-is-opened .x-icon { color: var(--td-brand-color); } .x-default-menu.x-is-collapsed .x-menu__item.x-menu__item--plain::after { content: ""; } .x-default-menu.x-is-collapsed .x-menu__item span { display: none; } .x-default-menu.x-is-collapsed .x-menu__item .x-icon { margin-right: initial; } .x-default-menu.x-is-collapsed .x-submenu-icon { display: none; } .x-default-menu.x-is-collapsed .x-submenu > .x-menu__item { min-width: initial; } .x-default-menu.x-is-collapsed .x-submenu > .x-menu__item::after { content: ""; display: block; position: absolute; right: -20px; top: 0; bottom: 0; width: 20px; } .x-default-menu.x-is-collapsed .x-menu-group__title { padding: 0; font-size: 0; } .x-default-menu.x-is-collapsed .x-menu-group__title::after { content: ""; display: block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); height: 1px; width: 20px; background: var(--td-component-stroke); } .x-default-menu.x-is-collapsed .x-menu__operations { text-align: center; } .x-default-menu.x-is-collapsed .x-menu__operations-icon { display: block; } .x-default-menu__inner { display: flex; flex-direction: column; height: 100%; } .x-default-menu__inner .x-menu__logo:not(:empty) { box-sizing: border-box; width: 100%; height: var(--td-comp-size-xxxl); border-bottom: 1px solid var(--td-component-stroke); } .x-default-menu__inner .x-menu { padding: var(--td-comp-paddingTB-l) var(--td-comp-paddingLR-s); position: relative; flex: 1; } .x-default-menu__inner .x-menu--scroll { scrollbar-color: var(--td-scrollbar-color) transparent; scrollbar-width: thin; overflow-y: auto; overflow-x: hidden; } .x-default-menu__inner .x-menu--scroll::-webkit-scrollbar { width: 6px; height: 6px; } .x-default-menu__inner .x-menu--scroll::-webkit-scrollbar-thumb { border: 0px solid transparent; background-clip: content-box; background-color: var(--td-scrollbar-color); border-radius: 11px; } .x-default-menu__inner .x-menu--scroll::-webkit-scrollbar-thumb:vertical:hover, .x-default-menu__inner .x-menu--scroll::-webkit-scrollbar-thumb:horizontal:hover { background-color: var(--td-scrollbar-hover-color); } .x-default-menu__inner .x-menu-group__title { position: relative; padding: var(--td-comp-paddingTB-l) var(--td-comp-paddingLR-l) var(--td-comp-paddingTB-xs) var(--td-comp-paddingLR-l); color: var(--td-text-color-placeholder); font-size: var(--td-font-body-small); box-sizing: border-box; } .x-default-menu .x-submenu { margin-bottom: var(--td-comp-margin-xs); position: relative; } .x-default-menu .x-menu__operations:not(:empty) { width: 100%; position: relative; padding: var(--td-comp-paddingTB-s) var(--td-comp-paddingLR-l); top: 0; left: 0; text-align: left; border-top: solid 1px var(--td-component-stroke); box-sizing: border-box; } .x-default-menu .x-menu__operations-icon { width: 32px; height: 32px; padding: var(--td-comp-paddingTB-s) var(--td-comp-paddingLR-s); cursor: pointer; color: var(--td-text-color-primary); box-sizing: border-box; } .x-default-menu .x-menu__item.x-is-opened { margin: var(--td-comp-margin-xs) 0; color: var(--td-text-color-primary); background-color: unset; } .x-default-menu .x-menu__item.x-is-opened .x-icon { color: var(--td-text-color-primary); } .x-default-menu .x-menu__sub { padding: 0; overflow: hidden; } .x-default-menu .x-menu__sub .x-menu__item { padding-left: var(--padding-left, 32px); } .x-default-menu .x-slide-down-enter-active .x-menu__sub { height: 100%; } .x-default-menu .x-menu__item { position: relative; margin: var(--td-comp-margin-xs) 0; padding: 0 10px 0 16px; height: var(--td-comp-size-l); line-height: var(--td-comp-size-l); border-bottom: 0; text-align: left; border-radius: var(--td-radius-default); transition: background-color 0.28s cubic-bezier(0.38, 0, 0.24, 1), padding 0.28s cubic-bezier(0.38, 0, 0.24, 1); box-sizing: border-box; } .x-default-menu .x-menu__item:first-child { margin-top: 0; } .x-default-menu .x-menu__item:last-child { margin-bottom: 0; } .x-default-menu .x-menu__item .x-icon { width: 18px; height: 18px; } .x-default-menu .x-menu__item .x-fake-arrow { margin-left: auto; min-width: 16px; } .x-default-menu .x-menu__item.x-is-active:not(.x-is-opened) { color: var(--td-brand-color); background-color: var(--td-brand-color-light); } .x-default-menu .x-menu__item.x-is-active:not(.x-is-opened) .x-icon { color: var(--td-brand-color); } .x-default-menu .x-menu__item:hover:not(.x-is-active):not(.x-is-disabled) { background: var(--td-bg-color-secondarycontainer-hover); } .x-default-menu.x-menu--dark { background: var(--td-gray-color-13); } .x-default-menu.x-menu--dark .x-menu__item { color: var(--td-font-white-2); } .x-default-menu.x-menu--dark .x-menu__logo:not(:empty) { border-bottom-color: var(--td-gray-color-10); } .x-default-menu.x-menu--dark .x-menu__operations:not(:empty) { border-top-color: var(--td-gray-color-10); } .x-default-menu.x-menu--dark .x-menu__item:hover:not(.x-is-active):not(.x-is-disabled) { background-color: var(--td-gray-color-10); } .x-default-menu.x-menu--dark .x-menu__item.x-is-active:not(.x-is-opened) { color: var(--td-text-color-anti); background-color: var(--td-brand-color); } .x-default-menu.x-menu--dark .x-menu__item.x-is-active:not(.x-is-opened) .x-icon { color: var(--td-text-color-anti); } .x-default-menu.x-menu--dark .x-menu__item.x-is-opened.x-is-active { background-color: transparent; } .x-default-menu.x-menu--dark .x-menu-group__title { color: var(--td-font-white-3); } .x-default-menu.x-menu--dark.x-is-collapsed .x-menu-group__title:after { background-color: var(--td-gray-color-10); } .x-default-menu.x-menu--dark.x-is-collapsed .x-menu__item.x-is-active.x-is-opened { background-color: var(--td-brand-color); color: var(--td-text-color-anti); } .x-default-menu.x-menu--dark.x-is-collapsed .x-menu__item.x-is-active.x-is-opened .x-icon { color: var(--td-text-color-anti); } .x-menu { color: var(--td-text-color-primary); font: var(--td-font-body-medium); list-style: none; padding: 0; margin: 0; } .x-menu--dark { color: var(--td-font-white-2); } .x-menu__logo:not(:empty) { display: flex; align-items: center; } .x-menu .x-submenu { position: relative; } .x-menu .x-submenu.x-is-active > .x-menu__item { color: var(--td-gray-color-13); } .x-menu .x-submenu.x-is-active > .x-menu__item .x-icon { color: var(--td-gray-color-13); } .x-menu .x-submenu .x-submenu-icon { width: 16px; height: 16px; } .x-menu .x-submenu.x-is-opened .x-submenu-icon { transform: scaleY(-1); } .x-menu__spacer::before { content: ""; display: block; position: absolute; z-index: 1; } .x-menu__spacer--left::before { left: -16px; width: 16px; top: 0; bottom: 0; } .x-menu__spacer--top::before { top: -20px; left: 0; right: 0; height: 20px; } .x-menu__item { position: relative; display: flex; align-items: center; height: 40px; line-height: 40px; text-align: center; color: var(--td-text-color-primary); cursor: pointer; text-overflow: ellipsis; border-radius: var(--td-radius-default); --ripple-color: var(--td-bg-color-container-active); } .x-menu__item > .x-fake-arrow { margin-left: var(--td-comp-margin-m); } .x-menu__item ::selection { background: transparent; } .x-menu__item-spacer { overflow: unset; } .x-menu__item-spacer::before { content: ""; display: block; position: absolute; z-index: 1; } .x-menu__item-spacer--right::before { right: -16px; width: 16px; top: 0; bottom: 0; } .x-menu__item-spacer--bottom::before { bottom: -20px; left: 0; right: 0; height: 20px; } .x-menu__item a { color: unset; text-decoration: none; } .x-menu__item a.x-menu__item-link { color: unset; } .x-menu__item a.x-menu__item-link::before { content: ""; position: absolute; top: 0; bottom: 0; left: 0; right: 0; } .x-menu__item.x-is-active { color: var(--td-brand-color); background-color: var(--td-brand-color-light); } .x-menu__item.x-is-opened { color: var(--td-brand-color); } .x-menu__item:hover:not(.x-is-active):not(.x-is-opened):not(.x-is-disabled) { background-color: var(--td-bg-color-container-hover); } .x-menu__item.x-is-disabled { color: var(--td-text-color-disabled); cursor: not-allowed; } .x-menu__content { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .x-icon + .x-menu__content, .x-icon + .x-menu__item-link { margin-left: var(--td-comp-margin-s); } .x-menu--dark.x-head-menu { background-color: var(--td-gray-color-13); } .x-menu--dark .x-menu__item { color: var(--td-text-color-anti); --ripple-color: var(--td-gray-color-11); } .x-menu--dark .x-menu__item.x-is-active { color: var(--td-text-color-anti); background-color: var(--td-brand-color); } .x-menu--dark .x-menu__item.x-is-opened { color: var(--td-text-color-anti); } .x-menu--dark .x-menu__item.x-is-opened .x-icon { color: var(--td-text-color-anti); } .x-menu--dark .x-menu__item.x-is-disabled { color: var(--td-font-white-4); } .x-menu--dark .x-menu__item:hover:not(.x-is-active):not(.x-is-opened):not(.x-is-disabled) { background-color: var(--td-gray-color-10); } .x-menu--dark .x-menu__popup { background: var(--td-gray-color-13); border: solid 0.5px var(--td-gray-color-10); } .x-menu--dark .x-menu__popup .x-menu__item { color: var(--td-text-color-anti); border-radius: var(--td-radius-default); } .x-menu--dark .x-menu__popup .x-menu__item.x-is-active { color: var(--td-text-color-anti); background-color: var(--td-brand-color); } .x-menu--dark .x-menu__popup .x-menu__item:hover:not(.x-is-active) { background-color: var(--td-gray-color-10); } .x-menu--dark .x-head-menu__submenu { border-top: 1px solid transparent; } .x-menu--dark .x-menu__operations-icon { color: var(--td-bg-color-container); } .x-menu--dark .x-menu__operations-icon:hover { background-color: var(--td-brand-color); } .x-menu__popup { overflow: hidden; position: absolute; background: var(--td-bg-color-container); z-index: 1000; border-radius: var(--td-radius-medium); opacity: 0; list-style: none; padding: 0; margin: 0; } .x-menu__popup-wrapper { padding: var(--td-pop-padding-m); height: 100%; list-style: none; margin: 0; scrollbar-color: var(--td-scrollbar-color) transparent; scrollbar-width: thin; } .x-menu__popup-wrapper::-webkit-scrollbar { width: 8px; height: 8px; } .x-menu__popup-wrapper::-webkit-scrollbar-thumb { border: 2px solid transparent; background-clip: content-box; background-color: var(--td-scrollbar-color); border-radius: 15px; } .x-menu__popup-wrapper::-webkit-scrollbar-thumb:vertical:hover, .x-menu__popup-wrapper::-webkit-scrollbar-thumb:horizontal:hover { background-color: var(--td-scrollbar-hover-color); } .x-menu__popup .x-fake-arrow { margin-left: auto; } .x-menu__popup .x-menu__item { padding-left: var(--td-comp-paddingLR-l); padding-right: var(--td-comp-paddingLR-l); } .x-menu__popup.x-is-vertical { min-width: var(--popup-width, 160px); } .x-menu__popup.x-is-horizontal .x-menu__item { white-space: nowrap; } .x-menu__popup.x-is-horizontal li + li { margin-top: var(--td-comp-margin-xs); } .x-menu__popup.x-is-opened { opacity: 1; box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.1), 0 8px 10px 1px rgba(0, 0, 0, 0.06), 0 3px 14px 6px rgba(0, 0, 0, 0.05); overflow: visible; } .x-menu__popup .x-menu__item { color: var(--td-text-color-primary); height: var(--td-comp-size-s); line-height: var(--td-comp-size-s); } .x-menu__popup .x-menu__item + .x-menu__item { margin-left: 0; } .x-menu__popup .x-menu__item:hover:not(.x-is-active) { background-color: var(--td-bg-color-container-hover); } .x-menu__popup .x-is-disabled { color: var(--td-text-color-disabled); } .x-menu__operations-icon { margin-right: var(--td-comp-margin-l); border-radius: var(--td-radius-default); color: var(--td-text-color-primary); transition: background-color 0.24s cubic-bezier(0.38, 0, 0.24, 1); } .x-menu__operations-icon:hover { background-color: var(--td-brand-color-light); } .x-opacity-transition { transition: opacity 0.28s cubic-bezier(0.55, 0, 0.1, 1); } .horizontal-collapse-transition .x-submenu__title .x-submenu__icon-arrow { transition: 0.2s; opacity: 0; } .x-menu__popup { top: 0; left: calc(100% - var(--td-pop-padding-m)); } .x-menu__popup .x-menu__item, .x-menu__popup .x-submenu { margin: var(--td-comp-margin-xxs) 0 0 0; } .x-menu__popup .x-menu__item:first-child, .x-menu__popup .x-submenu:first-child { margin-top: 0; } .x-is-head-menu .x-menu__popup { margin-top: calc((var(--td-comp-size-xxxl) - var(--td-comp-size-m)) / 2) !important; } .x-menu-is-nested .x-menu__popup { margin-top: calc(0px - var(--td-pop-padding-m)) !important; }