123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- /* ==================
- 边框
- ==================== */
- /* -- 实线 -- */
- .border {
- overflow: initial !important;
- @at-root [class*='border'],
- [class*='dashed'] {
- position: relative;
- &.dline {
- --ui-Border: var(--ui-BG-3);
- }
- &::after {
- content: ' ';
- width: 200%;
- height: 200%;
- position: absolute;
- z-index: 0;
- top: 0;
- left: 0;
- transform: scale(0.5);
- transform-origin: 0 0;
- pointer-events: none;
- box-sizing: border-box;
- border-radius: inherit;
- }
- &.radius::after {
- border-radius: calc(#{$radius} * 2);
- }
- &.round::after {
- border-radius: #{$round-pill};
- }
- }
- &::after {
- border: 1px solid var(--ui-Border);
- }
- &s::after {
- border: 4rpx solid var(--ui-Border);
- }
- &ss::after {
- border: 8rpx solid var(--ui-Border);
- }
- @each $value in (top, right, bottom, left) {
- &-#{$value}::after {
- border-#{$value}: 1px solid var(--ui-Border);
- }
- &s-#{$value}::after {
- border-#{$value}: 4rpx solid var(--ui-Border);
- }
- &ss-#{$value}::after {
- border-#{$value}: 8rpx solid var(--ui-Border);
- }
- }
- }
- /* -- 虚线 -- */
- .dashed {
- &::after {
- border: 4rpx dashed var(--ui-Border);
- }
- &s::after {
- border: 6rpx dashed var(--ui-Border);
- }
- @each $value in (top, right, bottom, left) {
- &-#{$value}::after {
- border-#{$value}: 4rpx dashed var(--ui-Border);
- }
- &s-#{$value}::after {
- border-#{$value}: 6rpx dashed var(--ui-Border);
- }
- }
- }
- @each $color, $value in map-merge($colors, map-merge($darks, $grays)) {
- .border-#{$color}::after,
- .border-#{$color}[class*='-shine']::before {
- border-color: $value !important;
- }
- }
- @each $value in (a, b, c, d, e) {
- .main-#{$value}-border::after,
- .main-#{$value}-border[class*='-shine']::before {
- border-color: var(--main-#{$value}) !important;
- }
- }
- .dashed-shine,
- .dasheds-shine {
- position: relative;
- overflow: hidden;
- &::after,
- &::before {
- border-style: dashed;
- border-color: var(--ui-Border);
- animation: shineafter 1s infinite linear;
- width: calc(200% + 40px);
- height: 200%;
- border-width: 2px 0;
- }
- &::before {
- content: ' ';
- position: absolute;
- transform: scale(0.5);
- transform-origin: 0 0;
- pointer-events: none;
- box-sizing: border-box;
- animation: shinebefore 1s infinite linear;
- width: 200%;
- height: calc(200% + 40px);
- border-width: 0 2px;
- }
- }
- .dasheds-shine {
- &::after,
- &::before {
- border-width: 4px 0;
- }
- &::before {
- border-width: 0 4px;
- }
- }
- @keyframes shineafter {
- 0% {
- top: 0;
- left: -22px;
- }
- 100% {
- top: 0px;
- left: 0px;
- }
- }
- @keyframes shinebefore {
- 0% {
- top: -22px;
- left: 0;
- }
- 100% {
- top: 0px;
- left: 0px;
- }
- }
|