123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- /* ==================
- 阴影
- ==================== */
- .shadow {
- box-shadow: var(--ui-Shadow);
- &-sm {
- box-shadow: var(--ui-Shadow-sm);
- }
- &-lg {
- box-shadow: var(--ui-Shadow-lg);
- }
- &-inset {
- box-shadow: var(--ui-Shadow-inset);
- }
- @each $color, $value in $colors {
- @at-root .shadow-#{$color} {
- box-shadow: 0 0.5em 1em rgba($value, var(--ui-Shadow-opacity));
- }
- &-sm.shadow-#{$color} {
- box-shadow: 0 0.125em 0.25em rgba($value, var(--ui-Shadow-opacity));
- }
- &-lg.shadow-#{$color} {
- box-shadow: 0 1em 3em rgba($value, var(--ui-Shadow-opacity-lg));
- }
- }
- &-warp {
- position: relative;
- }
- &-warp:before,
- &-warp:after {
- position: absolute;
- content: '';
- bottom: -10rpx;
- left: 20rpx;
- width: calc(50% - #{40rpx});
- height: 30rpx;
- transform: skew(0deg, -6deg);
- transform-origin: 50% 50%;
- background-color: rgba(0, 0, 0, var(--ui-Shadow-opacity));
- filter: blur(20rpx);
- z-index: -1;
- opacity: 0.5;
- }
- &-warp:after {
- right: 20rpx;
- left: auto;
- transform: skew(0deg, 6deg);
- }
- &-blur {
- position: relative;
- }
- &-blur::before {
- content: '';
- display: block;
- background: inherit;
- filter: blur(20rpx);
- position: absolute;
- width: 100%;
- height: 100%;
- top: 0.5em;
- left: 0.5em;
- z-index: -1;
- opacity: var(--ui-Shadow-opacity-lg);
- transform-origin: 0 0;
- border-radius: inherit;
- transform: scale(1, 1);
- }
- }
- .drop-shadow {
- filter: drop-shadow(0 0 30rpx rgba(0, 0, 0, 0.1));
- &-sm {
- filter: drop-shadow(0 4rpx 4rpx rgba(0, 0, 0, 0.06));
- }
- &-lg {
- filter: drop-shadow(0 30rpx 60rpx rgba(0, 0, 0, 0.2));
- }
- @each $color, $value in $colors {
- @at-root .drop-shadow-#{$color} {
- filter: drop-shadow(0 15rpx 15rpx rgba(darken($value, 10%), 0.3));
- }
- &-sm.drop-shadow-#{$color} {
- filter: drop-shadow(0 4rpx 4rpx rgba(darken($value, 10%), 0.3));
- }
- &-lg.drop-shadow-#{$color} {
- filter: drop-shadow(0 50rpx 100rpx rgba(darken($value, 10%), 0.2));
- }
- }
- }
|