feedback.vue 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. <template>
  2. <div class="main">
  3. <div class="content">
  4. <div class="left">
  5. <n-input
  6. v-model:value="feedBackContent"
  7. type="textarea"
  8. autosize
  9. placeholder="请填入内容,5-500字"
  10. style="min-height: 400px"
  11. />
  12. <n-space align="center" style="padding: 20px" justify="center">
  13. <n-input type="text" placeholder="昵称" />
  14. <n-input type="text" placeholder="联系方式" />
  15. <n-input type="text" placeholder="请填入图形验证码" />
  16. </n-space>
  17. <n-space align="center" justify="center" style="padding: 20px">
  18. <n-button type="primary"> 提交</n-button>
  19. </n-space>
  20. </div>
  21. <div class="right">
  22. <div class="logo"></div>
  23. <div class="back" @click="$router.push('/')"></div>
  24. </div>
  25. </div>
  26. </div>
  27. </template>
  28. <script setup>
  29. import { ref } from "vue";
  30. const feedBackContent = ref();
  31. </script>
  32. <style>
  33. .main {
  34. --main-left-background: grey;
  35. --main-right-background: rgba(0, 0, 0, 0.8);
  36. --logo-width: 100px;
  37. --go-home-width: 60px;
  38. --logo-background-color: rgba(0, 0, 0, 0.5);
  39. --left-content-padding: 50px;
  40. --right-content-padding: 50px;
  41. }
  42. </style>
  43. <style lang="scss" scoped>
  44. .main {
  45. width: 100%;
  46. height: 100%;
  47. display: flex;
  48. flex-direction: column;
  49. overflow-y: hidden;
  50. }
  51. .meta-title {
  52. font-size: 34px;
  53. padding-right: 50px;
  54. }
  55. .head {
  56. width: 100%;
  57. height: 60px;
  58. }
  59. .content {
  60. flex: 1;
  61. display: flex;
  62. width: 100%;
  63. height: 100%;
  64. flex-direction: row;
  65. overflow: hidden;
  66. }
  67. .left {
  68. flex: 1;
  69. background-color: var(--main-left-background);
  70. padding: var(--left-content-padding);
  71. .n-tabs {
  72. height: 100%;
  73. overflow: hidden;
  74. :deep(.n-tab-pane) {
  75. overflow-y: scroll;
  76. }
  77. }
  78. }
  79. .n-tabs {
  80. --n-tab-font-size: 26px !important;
  81. }
  82. .right {
  83. flex: 0 0 10%;
  84. min-width: 120px;
  85. /* max-width: 120px; */
  86. height: calc(100% - var(--right-content-padding) * 2);
  87. background-color: var(--main-right-background);
  88. display: flex;
  89. padding: 50px 0;
  90. flex-direction: column;
  91. align-items: center;
  92. justify-content: space-between;
  93. .logo {
  94. width: var(--logo-width);
  95. height: var(--logo-width);
  96. border-radius: 50%;
  97. background-color: var(--logo-background-color);
  98. }
  99. .back {
  100. width: var(--go-home-width);
  101. height: var(--go-home-width);
  102. border-radius: 50%;
  103. background-color: var(--logo-background-color);
  104. }
  105. }
  106. </style>