UNPKG

@arco-design/web-vue

Version:

Arco Design Vue 2.0: A Vue.js 3 UI Library

220 lines (219 loc) 5.74 kB
/******** borderSize *******/ /******** borderStyle *******/ /******** radius *******/ /******** shadow distance *******/ /******** size *******/ /******** spacing *******/ /******** shadow *******/ /******** opacity *******/ /******** fontSize *******/ /******** fontWeight ********/ /******** Primary *******/ /******** success *******/ /******** warning *******/ /******** danger *******/ /******** link *******/ /******** radius *******/ /********* icon hover *********/ .arco-radio > input[type='radio'], .arco-radio-button > input[type='radio'] { position: absolute; top: 0; left: 0; width: 0; height: 0; opacity: 0; } .arco-radio > input[type='radio']:focus + .arco-radio-icon-hover::before, .arco-radio-button > input[type='radio']:focus + .arco-radio-icon-hover::before { background-color: var(--color-fill-2); } .arco-icon-hover.arco-radio-icon-hover::before { width: 24px; height: 24px; } .arco-radio { position: relative; display: inline-flex; align-items: center; padding-left: 5px; font-size: 14px; line-height: unset; cursor: pointer; } .arco-radio-label { margin-left: 8px; color: var(--color-text-1); } .arco-radio-icon { position: relative; display: block; box-sizing: border-box; width: 14px; height: 14px; line-height: 14px; border: 2px solid var(--color-neutral-3); border-radius: var(--border-radius-circle); } .arco-radio-icon::after { position: absolute; top: 0; left: 0; display: inline-block; box-sizing: border-box; width: 10px; height: 10px; background-color: var(--color-bg-2); border-radius: var(--border-radius-circle); transform: scale(1); transition: transform 0.3s cubic-bezier(0.3, 1.3, 0.3, 1); content: ''; } .arco-radio:hover .arco-radio-icon { border-color: var(--color-neutral-3); } .arco-radio-checked .arco-radio-icon { background-color: rgb(var(--primary-6)); border-color: rgb(var(--primary-6)); } .arco-radio-checked .arco-radio-icon::after { background-color: var(--color-white); transform: scale(0.4); } .arco-radio-checked:hover .arco-radio-icon { border-color: rgb(var(--primary-6)); } .arco-radio-disabled { cursor: not-allowed; } .arco-radio-disabled .arco-radio-icon-hover { cursor: not-allowed; } .arco-radio-disabled .arco-radio-label { color: var(--color-text-4); } .arco-radio-disabled .arco-radio-icon { border-color: var(--color-neutral-3); } .arco-radio-disabled .arco-radio-icon::after { background-color: var(--color-fill-2); } .arco-radio-disabled:hover .arco-radio-icon { border-color: var(--color-neutral-3); } .arco-radio-checked.arco-radio-disabled .arco-radio-icon, .arco-radio-checked.arco-radio-disabled:hover .arco-radio-icon { background-color: var(--color-primary-light-3); border-color: transparent; } .arco-radio-checked.arco-radio-disabled .arco-radio-icon::after { background-color: var(--color-fill-2); } .arco-radio-checked.arco-radio-disabled .arco-radio-label { color: var(--color-text-4); } .arco-radio:hover .arco-radio-icon-hover::before { background-color: var(--color-fill-2); } .arco-radio-group { display: inline-block; box-sizing: border-box; } .arco-radio-group .arco-radio { margin-right: 20px; } .arco-radio-group-button { display: inline-flex; padding: 1.5px; line-height: 26px; background-color: var(--color-fill-2); border-radius: var(--border-radius-small); } .arco-radio-button { position: relative; display: inline-block; margin: 1.5px; color: var(--color-text-2); font-size: 14px; line-height: 26px; background-color: transparent; border-radius: var(--border-radius-small); cursor: pointer; transition: all 0.1s cubic-bezier(0, 0, 1, 1); } .arco-radio-button-content { position: relative; display: block; padding: 0 12px; } .arco-radio-button:not(:first-of-type)::before { position: absolute; top: 50%; left: -2px; display: block; width: 1px; height: 14px; background-color: var(--color-neutral-3); transform: translateY(-50%); transition: all 0.1s cubic-bezier(0, 0, 1, 1); content: ''; } .arco-radio-button:hover::before, .arco-radio-button:hover + .arco-radio-button::before, .arco-radio-button.arco-radio-checked::before, .arco-radio-button.arco-radio-checked + .arco-radio-button::before { opacity: 0; } .arco-radio-button:hover { color: var(--color-text-1); background-color: var(--color-bg-5); } .arco-radio-button.arco-radio-checked { color: rgb(var(--primary-6)); background-color: var(--color-bg-5); } .arco-radio-button.arco-radio-disabled { color: var(--color-text-4); background-color: transparent; cursor: not-allowed; } .arco-radio-button.arco-radio-disabled.arco-radio-checked { color: var(--color-primary-light-3); background-color: var(--color-bg-5); } .arco-radio-group-size-small { line-height: 28px; } .arco-radio-group-size-small.arco-radio-group-button, .arco-radio-group-size-small .arco-radio-button { font-size: 14px; line-height: 22px; } .arco-radio-group-size-large { line-height: 36px; } .arco-radio-group-size-large.arco-radio-group-button, .arco-radio-group-size-large .arco-radio-button { font-size: 14px; line-height: 30px; } .arco-radio-group-size-mini { line-height: 24px; } .arco-radio-group-size-mini.arco-radio-group-button, .arco-radio-group-size-mini .arco-radio-button { font-size: 12px; line-height: 18px; } .arco-radio-group-direction-vertical .arco-radio { display: flex; margin-right: 0; line-height: 32px; } body[arco-theme='dark'] .arco-radio-button.arco-radio-checked, body[arco-theme='dark'] .arco-radio-button:not(.arco-radio-disabled):hover { background-color: var(--color-fill-3); } body[arco-theme='dark'] .arco-radio-button::after { background-color: var(--color-bg-3); }