App.vue 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. <template>
  2. <router-view />
  3. </template>
  4. <script setup>
  5. // import { onClickOutside } from '@vueuse/core'
  6. // import { shuffle } from "lodash"
  7. import { ref, computed, watch, onMounted } from "vue"
  8. import { useStore } from "vuex"
  9. const store = useStore()
  10. </script>
  11. <style lang="less">
  12. // html, body {
  13. // overscroll-behavior: none;
  14. // overflow: hidden;
  15. // }
  16. // * {
  17. // user-select: none;
  18. // -webkit-touch-callout: none;
  19. // }
  20. #app {
  21. height: 100%;
  22. }
  23. // // 360浏览器不支持not()
  24. // input, textarea {
  25. // user-select: initial;
  26. // }
  27. // 字体
  28. @font-face {
  29. font-family: 'Source Han Serif CN';
  30. src: url('@/assets/style/SourceHanSerifCN-Regular.otf');
  31. }
  32. @font-face {
  33. font-family: 'Source Han Serif CN-Bold';
  34. src: url('@/assets/style/SourceHanSerifCN-Bold.otf');
  35. }
  36. @font-face {
  37. font-family: 'JingHuaLaoSong';
  38. src: url('@/assets/style/jing-hua-lao-song-ti.ttf');
  39. }
  40. @font-face {
  41. font-family: 'SourceHanSansCN-Medium';
  42. src: url('@/assets/style/SourceHanSansCN-Medium.otf');
  43. }
  44. @font-face {
  45. font-family: 'SourceHanSerifCN-Heavy';
  46. src: url('@/assets/style/SourceHanSerifCN-Heavy.otf');
  47. }
  48. @font-face {
  49. font-family: 'SourceHanSansSC-Bold';
  50. src: url('@/assets/style/SourceHanSansSC-Bold-2.otf');
  51. }
  52. @font-face {
  53. font-family: 'SourceHanSansSC-Normal';
  54. src: url('@/assets/style/SourceHanSansSC-Normal-2.otf');
  55. }
  56. // i {
  57. // font-style: italic;
  58. // }
  59. // 滚动条,只设置某一项可能导致不生效。
  60. ::-webkit-scrollbar { background: rgba(0, 0, 0, 0.2); width: 6px; height: 6px; }
  61. ::-webkit-scrollbar-thumb { background: #C9AD83; border-radius: 3px;}
  62. ::-webkit-scrollbar-corner { background: rgba(0, 0, 0, 0.2); }
  63. // vue组件过渡效果
  64. .fade-out-leave-active {
  65. transition: opacity 1s;
  66. pointer-events: none;
  67. }
  68. .fade-out-leave-to {
  69. opacity: 0;
  70. }
  71. // vue组件过渡效果
  72. .fade-in-enter-active {
  73. transition: opacity 1s;
  74. }
  75. .fade-in-enter-from {
  76. opacity: 0;
  77. }
  78. .fade-out-leave-active {
  79. transition: opacity 1s;
  80. pointer-events: none;
  81. }
  82. .fade-out-leave-to {
  83. opacity: 0;
  84. }
  85. .fade-in-out-enter-active {
  86. transition: opacity 0.5s;
  87. }
  88. .fade-in-out-leave-active {
  89. transition: opacity 0.5s;
  90. pointer-events: none;
  91. }
  92. .fade-in-out-enter-from {
  93. opacity: 0;
  94. }
  95. .fade-in-out-leave-to {
  96. opacity: 0;
  97. }
  98. // 不断渐变显隐 animation
  99. .animation-show-hide {
  100. animation: show-hide 1.8s infinite;
  101. }
  102. @keyframes show-hide {
  103. 0% {
  104. opacity: 0;
  105. }
  106. 50% {
  107. opacity: 1;
  108. }
  109. 100% {
  110. opacity: 0;
  111. }
  112. }
  113. // // vue-viewer
  114. // .viewer-container {
  115. // background-color: rgba(0, 0, 0, 80%) !important;
  116. // }
  117. // 或者
  118. // .viewer-backdrop {
  119. // background-color: rgba(0, 0, 0, 90%) !important;
  120. // }
  121. </style>