top-window.vue 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. <template>
  2. <header class="cwg-pc-header">
  3. <div class="left">
  4. <image class="left-img" src="/static/images/logo.png" mode="widthFix" alt="logo" @click="openLeftDrawer" />
  5. </div>
  6. <div class="right">
  7. <cwg-language />
  8. <cwg-notice />
  9. <cwg-right-drawer />
  10. </div>
  11. </header>
  12. </template>
  13. <script setup lang="ts">
  14. const props = defineProps({
  15. sidebarVisible: {
  16. type: Boolean,
  17. default: false
  18. },
  19. })
  20. </script>
  21. <style scoped lang="scss">
  22. .cwg-pc-header {
  23. display: flex;
  24. align-items: center;
  25. justify-content: space-between;
  26. height: px2rpx(55);
  27. background-color: rgba(255, 255, 255, 0.9);
  28. border-bottom: 1px solid #f0f0f0;
  29. padding: 0 px2rpx(16);
  30. position: relative;
  31. z-index: 10;
  32. }
  33. .left {
  34. display: flex;
  35. align-items: center;
  36. }
  37. .center {
  38. flex: 1;
  39. }
  40. .right {
  41. display: flex;
  42. align-items: center;
  43. gap: 0;
  44. }
  45. .bell .dot {
  46. position: absolute;
  47. top: 0;
  48. right: -2px;
  49. width: 7px;
  50. height: 7px;
  51. background: #27ae60;
  52. border-radius: 50%;
  53. display: inline-block;
  54. }
  55. .left-img {
  56. width: px2rpx(120);
  57. }
  58. .avatar .img {
  59. width: 32px;
  60. height: 32px;
  61. border-radius: 50%;
  62. background: #eee;
  63. }
  64. .logo .img {
  65. width: 36px;
  66. height: 36px;
  67. border-radius: 50%;
  68. background: #fff;
  69. }
  70. </style>