header.vue 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293
  1. <template>
  2. <section id="proginn-header">
  3. <section class="list">
  4. <a href="/" class="nav-item">
  5. <img class="logo" src="https://dev.test.proginn.com/Public/image/common/logo_new.png">
  6. </a>
  7. <a href="/" class="nav-item">首页</a>
  8. <a href="/cloud?from=top_nav" class="nav-item">云端工作</a>
  9. <a href="/users/" class="nav-item">程序员</a>
  10. <a href="/community" class="nav-item">技术圈</a>
  11. <section>
  12. <section style="position: relative;">
  13. <input class="input" autocomplete="off" placeholder="搜索您感兴趣的程序员">
  14. <i class="el-icon-search"></i>
  15. </section>
  16. <div class="dropdown" style="display:none;"></div>
  17. <div class="dropdown" style="display:none;"></div>
  18. </section>
  19. <el-dropdown class="nav-dropdown">
  20. <el-button type="text" style="color: #515151;">
  21. <i class="el-icon-tickets"></i>工作台
  22. </el-button>
  23. <el-dropdown-menu slot="dropdown">
  24. <el-dropdown-item>
  25. <i class="el-icon-edit"></i>我的待办
  26. </el-dropdown-item>
  27. <el-dropdown-item>
  28. <i class="el-icon-date"></i>我的项目
  29. </el-dropdown-item>
  30. <el-dropdown-item>
  31. <i class="el-icon-news"></i>我的雇佣
  32. </el-dropdown-item>
  33. <el-dropdown-item>
  34. <i class="el-icon-service"></i>我的云端
  35. </el-dropdown-item>
  36. </el-dropdown-menu>
  37. </el-dropdown>
  38. <el-dropdown class="nav-dropdown">
  39. <el-button type="text" style="color: #515151;">
  40. <i class="el-icon-message"></i>消息
  41. </el-button>
  42. <el-dropdown-menu slot="dropdown">
  43. <el-dropdown-item>
  44. <i class="circle blue"></i>系统消息
  45. </el-dropdown-item>
  46. <el-dropdown-item>
  47. <i class="circle orange"></i>工作通知
  48. </el-dropdown-item>
  49. <el-dropdown-item>
  50. <i class="circle red"></i>评论回复
  51. </el-dropdown-item>
  52. <el-dropdown-item>
  53. <i class="circle green"></i>@我的
  54. </el-dropdown-item>
  55. <el-dropdown-item>
  56. <i class="circle pink"></i>赞及其它
  57. </el-dropdown-item>
  58. <el-dropdown-item>
  59. <i class="circle yellow"></i>收支信息
  60. </el-dropdown-item>
  61. </el-dropdown-menu>
  62. </el-dropdown>
  63. <el-popover class="nav-popover" placement="bottom" width="226" trigger="hover">
  64. <section class="ref" slot="reference">
  65. <a class="nav-header" href="/wo/work_todo">
  66. <img
  67. class="header-user"
  68. src="https://programmerinn.b0.upaiyun.com/useralbum/64168/icon641681476172013.jpg!mediumicon"
  69. alt="header"
  70. >
  71. <img
  72. class="header-vip-icon"
  73. src="https://dev.test.proginn.com/Public/image/h5/vip_icon_com.png?v=v1547884005"
  74. alt="vip-icon"
  75. >
  76. </a>
  77. <span class="nickname dib">yyyy</span>
  78. </section>
  79. <section class="menu">
  80. <section class="vip-info vip-info-com">
  81. <section class="vip-info-top">
  82. <img
  83. class="vip-icon"
  84. src="https://dev.test.proginn.com/Public/image/h5/vip_icon_com.png?v=v1547884005"
  85. alt="vip-icon"
  86. >
  87. <span class="vip-content">
  88. <span class="vip-title">企业会员</span>
  89. <br>
  90. <span class="vip-end-date">2022-08-01到期</span>
  91. </span>
  92. </section>
  93. <section class="vip-arcs">
  94. <a class="vip-arc" href="/type/vip/">查看权益</a>
  95. <a class="vip-arc" href="/vip/pay?number=3&amp;product_id=1&amp;next=/type/vip/">立即续费</a>
  96. </section>
  97. </section>
  98. <section class="vip-items">
  99. <a class="vip-item divider" href="/wo/work_platform">
  100. <i class="el-icon-date"></i>我的项目
  101. </a>
  102. <a class="vip-item" href="/wo/work_hire">
  103. <i class="el-icon-news"></i>我的雇佣
  104. </a>
  105. <a class="vip-item" href="/wo/work_cloud">
  106. <i class="el-icon-service"></i>我的云端
  107. </a>
  108. <a class="vip-item divider" href="/wo/64168">
  109. <i class="el-icon-document"></i>我的主页
  110. </a>
  111. <a class="vip-item" href="/index/app">
  112. <i class="el-icon-view"></i>关注微信
  113. </a>
  114. <a class="vip-item divider">
  115. <i class="el-icon-back"></i>退出
  116. </a>
  117. </section>
  118. </section>
  119. </el-popover>
  120. </section>
  121. </section>
  122. </template>
  123. <script>
  124. export default {
  125. }
  126. </script>
  127. <style scoped>
  128. #proginn-header {
  129. display: flex;
  130. justify-content: center;
  131. background: white;
  132. }
  133. .list {
  134. display: flex;
  135. justify-content: space-between;
  136. align-items: center;
  137. width: 1000px;
  138. }
  139. .nav-item {
  140. display: flex;
  141. height: 80px;
  142. align-items: center;
  143. font-size: 15px;
  144. color: #515151;
  145. }
  146. .nav-dropdown,
  147. .nav-popover {
  148. --imgWidth: 28px;
  149. height: 40px;
  150. }
  151. .nav-popover > .ref {
  152. display: flex;
  153. align-items: center;
  154. }
  155. .nav-header {
  156. position: relative;
  157. width: var(--imgWidth);
  158. height: var(--imgWidth);
  159. margin-right: 10px;
  160. }
  161. .logo {
  162. width: 120px;
  163. height: auto;
  164. }
  165. .input {
  166. width: 234px;
  167. height: 40px;
  168. border-radius: 20px;
  169. background: #f6f6f6;
  170. padding: 0 40px;
  171. }
  172. .el-icon-search {
  173. position: absolute;
  174. top: 12px;
  175. right: 20px;
  176. transform: scale(1.5);
  177. color: grey;
  178. }
  179. i {
  180. margin-right: 4px;
  181. }
  182. i.circle {
  183. display: inline-block;
  184. --width: 12px;
  185. width: var(--width);
  186. height: var(--width);
  187. border-radius: calc(var(--width) / 2);
  188. }
  189. i.blue {
  190. background: #3b83c0;
  191. }
  192. i.orange {
  193. background: #e07b53;
  194. }
  195. i.red {
  196. background: #d95c5c;
  197. }
  198. i.green {
  199. background: #5bbd72;
  200. }
  201. i.pink {
  202. background: #d9499a;
  203. }
  204. i.yellow {
  205. background: #f2c61f;
  206. }
  207. span.other-icon {
  208. display: block;
  209. margin-left: 30px;
  210. }
  211. .vip-info {
  212. display: flex;
  213. flex-direction: column;
  214. justify-content: center;
  215. align-items: center;
  216. width: 206px;
  217. height: 120px;
  218. }
  219. .vip-info-top {
  220. display: flex;
  221. width: 142px;
  222. }
  223. .vip-title {
  224. color: #cb9d53;
  225. font-size: 16px;
  226. line-height: 36px;
  227. }
  228. .vip-icon {
  229. width: 24px;
  230. height: 24px;
  231. margin: 10px 8px 0 0;
  232. }
  233. .vip-end-date {
  234. font-size: 12px;
  235. color: #999;
  236. }
  237. .vip-arcs {
  238. display: flex;
  239. justify-content: space-between;
  240. width: 142px;
  241. margin-top: 11px;
  242. }
  243. .vip-arc {
  244. flex: 1;
  245. font-size: 13px;
  246. color: #cb9d53;
  247. text-align: center;
  248. }
  249. .vip-arc:first-child {
  250. border-right: 1px solid rgba(245, 245, 245, 1);
  251. }
  252. .vip-info-com .vip-title {
  253. color: rgb(113, 177, 253);
  254. }
  255. .vip-info-com .vip-arc {
  256. color: rgb(113, 177, 253);
  257. }
  258. .header-user {
  259. width: var(--imgWidth);
  260. height: var(--imgWidth);
  261. border-radius: 20px;
  262. }
  263. .header-vip-icon {
  264. position: absolute;
  265. top: 18px;
  266. left: 20px;
  267. width: 16px;
  268. height: 16px;
  269. }
  270. .vip-items {
  271. display: flex;
  272. flex-direction: column;
  273. }
  274. .vip-item {
  275. line-height: 32px;
  276. color: #606266;
  277. }
  278. .vip-item>i {
  279. margin: 0 10px;
  280. }
  281. .divider {
  282. border-top: 1px solid rgba(0,0,0,.05);
  283. margin-top: 10px;
  284. padding-top: 10px;
  285. }
  286. </style>