智慧水务管理系统 - 精河县供水工程综合管理平台

notification.scss 2.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. @use 'mixins/mixins' as *;
  2. @use 'mixins/var' as *;
  3. @use 'common/var' as *;
  4. @include b(notification) {
  5. @include set-component-css-var('notification', $notification);
  6. }
  7. @include b(notification) {
  8. display: flex;
  9. width: getCssVar('notification-width');
  10. padding: getCssVar('notification-padding');
  11. border-radius: getCssVar('notification-radius');
  12. box-sizing: border-box;
  13. border: 1px solid getCssVar('notification-border-color');
  14. position: fixed;
  15. background-color: getCssVar('bg-color', 'overlay');
  16. box-shadow: getCssVar('notification-shadow');
  17. transition:
  18. opacity getCssVar('transition-duration'),
  19. transform getCssVar('transition-duration'),
  20. left getCssVar('transition-duration'),
  21. right getCssVar('transition-duration'),
  22. top 0.4s,
  23. bottom getCssVar('transition-duration');
  24. overflow-wrap: break-word;
  25. overflow: hidden;
  26. z-index: 9999;
  27. &.right {
  28. right: 16px;
  29. }
  30. &.left {
  31. left: 16px;
  32. }
  33. @include e(group) {
  34. flex: 1;
  35. min-width: 0;
  36. margin-left: getCssVar('notification-group-margin-left');
  37. margin-right: getCssVar('notification-group-margin-right');
  38. }
  39. @include e(title) {
  40. font-weight: bold;
  41. font-size: getCssVar('notification-title-font-size');
  42. line-height: getCssVar('notification-icon-size');
  43. color: getCssVar('notification-title-color');
  44. margin: 0;
  45. }
  46. @include e(content) {
  47. font-size: getCssVar('notification-content-font-size');
  48. line-height: 24px;
  49. margin: 6px 0 0;
  50. color: getCssVar('notification-content-color');
  51. p {
  52. margin: 0;
  53. }
  54. }
  55. & .#{$namespace}-notification__icon {
  56. flex-shrink: 0;
  57. height: getCssVar('notification-icon-size');
  58. width: getCssVar('notification-icon-size');
  59. font-size: getCssVar('notification-icon-size');
  60. }
  61. & .#{$namespace}-notification__closeBtn {
  62. position: absolute;
  63. top: 18px;
  64. right: 15px;
  65. cursor: pointer;
  66. color: getCssVar('notification-close-color');
  67. font-size: getCssVar('notification-close-font-size');
  68. &:hover {
  69. color: getCssVar('notification-close-hover-color');
  70. }
  71. }
  72. @each $type in (primary, success, info, warning, error) {
  73. & .#{$namespace}-notification--#{$type} {
  74. @include css-var-from-global(
  75. ('notification', 'icon-color'),
  76. ('color', $type)
  77. );
  78. color: getCssVar('notification-icon-color');
  79. }
  80. }
  81. }
  82. .#{$namespace}-notification-fade-enter-from {
  83. &.right {
  84. right: 0;
  85. transform: translateX(100%);
  86. }
  87. &.left {
  88. left: 0;
  89. transform: translateX(-100%);
  90. }
  91. }
  92. .#{$namespace}-notification-fade-leave-to {
  93. opacity: 0;
  94. }