choerodon-ui
Version:
An enterprise-class UI design language and React-based implementation
325 lines (324 loc) • 9.08 kB
CSS
/* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */
/* stylelint-disable no-duplicate-selectors */
/* stylelint-disable declaration-bang-space-before,no-duplicate-selectors */
/* stylelint-disable declaration-bang-space-before,no-duplicate-selectors */
.c7n-notification {
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
list-style: none;
position: fixed;
z-index: 1030;
max-width: calc(100vw - .32rem);
margin-right: 0.24rem;
}
.c7n-notification-scroll {
overflow-x: hidden;
overflow-y: auto;
}
.c7n-notification-scroll::-webkit-scrollbar {
width: 8px;
}
.c7n-notification-scroll::-webkit-scrollbar-thumb {
background-color: rgba(45, 45, 45, 0.5);
border-radius: 8px;
-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);
box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);
}
.c7n-notification-before-shadow::before {
position: absolute;
top: 0;
left: 0.12rem;
z-index: 1;
width: calc(100% - 0.32rem);
height: 0.57rem;
margin: 0;
background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.5)), to(#ffffff));
background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.5) 0%, #ffffff 100%);
-webkit-transform: scaleY(-1);
-ms-transform: scaleY(-1);
transform: scaleY(-1);
content: '';
}
.c7n-notification-after-shadow::after {
position: absolute;
bottom: 0.35rem;
left: 0.12rem;
z-index: 1;
width: calc(100% - 0.32rem);
height: 0.57rem;
margin: 0;
background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(rgba(255, 255, 255, 0.5)));
background-image: linear-gradient(180deg, #ffffff 0%, rgba(255, 255, 255, 0.5) 100%);
border-radius: 0.04rem;
-webkit-transform: scaleY(-1);
-ms-transform: scaleY(-1);
transform: scaleY(-1);
content: '';
}
.c7n-notification-alert {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
margin: 0 0.2rem 0.1rem 0.12rem;
padding: 0.08rem 0.16rem;
background-color: #ffffff;
border: none;
border-radius: 0.04rem;
-webkit-box-shadow: 0 0.04rem 0.12rem rgba(0, 0, 0, 0.12);
box-shadow: 0 0.04rem 0.12rem rgba(0, 0, 0, 0.12);
}
.c7n-notification-alert-message {
color: rgba(0, 0, 0, 0.45);
}
.c7n-notification-alert-close {
color: #3f51b5;
cursor: pointer;
}
.c7n-notification-alert-close:hover {
color: #6374c2;
}
.c7n-notification-topLeft,
.c7n-notification-bottomLeft {
margin-right: 0;
margin-left: 0.24rem;
}
.c7n-notification-topLeft .c7n-notification-fade-enter.c7n-notification-fade-enter-active,
.c7n-notification-bottomLeft .c7n-notification-fade-enter.c7n-notification-fade-enter-active,
.c7n-notification-topLeft .c7n-notification-fade-appear.c7n-notification-fade-appear-active,
.c7n-notification-bottomLeft .c7n-notification-fade-appear.c7n-notification-fade-appear-active {
-webkit-animation-name: NotificationLeftFadeIn;
animation-name: NotificationLeftFadeIn;
}
.c7n-notification-notice {
position: relative;
width: 3.84rem;
margin-bottom: 0.16rem;
padding: 0.16rem 0.24rem;
overflow: hidden;
line-height: 1.5;
background-color: #fff;
border-radius: 0.02rem;
-webkit-box-shadow: 0 0.04rem 0.12rem rgba(0, 0, 0, 0.12);
box-shadow: 0 0.04rem 0.12rem rgba(0, 0, 0, 0.12);
-webkit-transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.c7n-notification-notice-message {
display: inline-block;
margin-bottom: 0.08rem;
color: rgba(0, 0, 0, 0.85);
font-size: 0.16rem;
line-height: 0.24rem;
}
.c7n-notification-notice-message-single-line-auto-margin {
display: block;
width: calc(3.84rem - 0.24rem * 2 - .24rem - .48rem - 100%);
max-width: 0.04rem;
background-color: transparent;
pointer-events: none;
}
.c7n-notification-notice-message-single-line-auto-margin::before {
display: block;
content: '';
}
.c7n-notification-notice-description {
font-size: 0.13rem;
}
.c7n-notification-notice-closable .c7n-notification-notice-message {
padding-right: 0.24rem;
}
.c7n-notification-notice-opacity {
-webkit-transform: scale(0.98);
-ms-transform: scale(0.98);
transform: scale(0.98);
opacity: 0.7;
-webkit-filter: blur(0.5px);
filter: blur(0.5px);
-webkit-transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.c7n-notification-notice-with-icon .c7n-notification-notice-message {
margin-bottom: 0.04rem;
margin-left: 0.48rem;
font-size: 0.16rem;
}
.c7n-notification-notice-with-icon .c7n-notification-notice-description {
margin-left: 0.48rem;
font-size: 0.13rem;
}
.c7n-notification-notice-icon {
position: absolute;
margin-left: 0.04rem;
font-size: 0.24rem;
line-height: 0.24rem;
}
.c7n-notification-notice-icon-success {
color: #00bf96;
}
.c7n-notification-notice-icon-info {
color: #3f51b5;
}
.c7n-notification-notice-icon-warning {
color: #faad14;
}
.c7n-notification-notice-icon-error {
color: #d50000;
}
.c7n-notification-notice-close-x::after {
font-size: 0.13rem;
font-family: anticon, sans-serif;
cursor: pointer;
content: '\e633';
}
.c7n-notification-notice-close {
position: absolute;
top: 0.16rem;
right: 0.22rem;
color: rgba(0, 0, 0, 0.45);
outline: none;
}
a.c7n-notification-notice-close:focus {
text-decoration: none;
}
.c7n-notification-notice-close:hover {
color: #404040;
}
.c7n-notification-notice-hide-shadow {
-webkit-box-shadow: none;
box-shadow: none;
-webkit-transform: scale(0.98);
-ms-transform: scale(0.98);
transform: scale(0.98);
-webkit-transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.c7n-notification-notice-btn {
float: right;
margin-top: 0.16rem;
}
.c7n-notification-scroll .c7n-notification-notice {
margin-right: 0.12rem;
margin-left: 0.12rem;
}
.c7n-notification .notification-fade-effect {
-webkit-animation-duration: 0.24s;
animation-duration: 0.24s;
-webkit-animation-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
animation-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
}
.c7n-notification-fade-enter,
.c7n-notification-fade-appear {
opacity: 0;
-webkit-animation-duration: 0.24s;
animation-duration: 0.24s;
-webkit-animation-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
animation-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
-webkit-animation-play-state: paused;
animation-play-state: paused;
}
.c7n-notification-fade-leave {
-webkit-animation-duration: 0.24s;
animation-duration: 0.24s;
-webkit-animation-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
animation-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
-webkit-animation-duration: 0.2s;
animation-duration: 0.2s;
-webkit-animation-play-state: paused;
animation-play-state: paused;
}
.c7n-notification-fade-enter.c7n-notification-fade-enter-active,
.c7n-notification-fade-appear.c7n-notification-fade-appear-active {
-webkit-animation-name: NotificationFadeIn;
animation-name: NotificationFadeIn;
-webkit-animation-play-state: running;
animation-play-state: running;
}
.c7n-notification-fade-leave.c7n-notification-fade-leave-active {
-webkit-animation-name: NotificationFadeOut;
animation-name: NotificationFadeOut;
-webkit-animation-play-state: running;
animation-play-state: running;
}
@-webkit-keyframes NotificationFadeIn {
0% {
left: 3.84rem;
opacity: 0;
}
100% {
left: 0;
opacity: 1;
}
}
@keyframes NotificationFadeIn {
0% {
left: 3.84rem;
opacity: 0;
}
100% {
left: 0;
opacity: 1;
}
}
@-webkit-keyframes NotificationLeftFadeIn {
0% {
right: 3.84rem;
opacity: 0;
}
100% {
right: 0;
opacity: 1;
}
}
@keyframes NotificationLeftFadeIn {
0% {
right: 3.84rem;
opacity: 0;
}
100% {
right: 0;
opacity: 1;
}
}
@-webkit-keyframes NotificationFadeOut {
0% {
max-height: 1.5rem;
margin-bottom: 0.16rem;
padding-top: 0.16rem 0.24rem;
padding-bottom: 0.16rem 0.24rem;
opacity: 1;
}
100% {
max-height: 0;
margin-bottom: 0;
padding-top: 0;
padding-bottom: 0;
opacity: 0;
}
}
@keyframes NotificationFadeOut {
0% {
max-height: 1.5rem;
margin-bottom: 0.16rem;
padding-top: 0.16rem 0.24rem;
padding-bottom: 0.16rem 0.24rem;
opacity: 1;
}
100% {
max-height: 0;
margin-bottom: 0;
padding-top: 0;
padding-bottom: 0;
opacity: 0;
}
}