my.scss 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726
  1. page {
  2. background-color: #fff;
  3. }
  4. .page {
  5. background-color: #fff;
  6. width: 100%;
  7. min-height: 100vh;
  8. }
  9. .reserveASeat {
  10. width: 100%;
  11. height: calc(var(--status-bar-height));
  12. }
  13. .topBody {
  14. width: 750rpx;
  15. }
  16. .header1 {
  17. display: flex;
  18. flex-direction: row;
  19. justify-content: flex-start;
  20. align-items: flex-start;
  21. width: 750rpx;
  22. height: 420rpx;
  23. position: relative;
  24. z-index: 10;
  25. position: relative;
  26. .topBg {
  27. width: 750rpx;
  28. height: 250rpx;
  29. background: #90d369;
  30. border-radius: 0 0 50% 50% / 0 0 20% 20%;
  31. z-index: 0;
  32. position: absolute;
  33. }
  34. /* 新增设置按钮 */
  35. .settingBtn {
  36. position: absolute;
  37. top: 24rpx;
  38. right: 30rpx;
  39. z-index: 11;
  40. width: 48rpx;
  41. height: 48rpx;
  42. /* 新增点击态 */
  43. &:active {
  44. opacity: 0.7;
  45. transform: scale(0.95);
  46. }
  47. image {
  48. width: 100%;
  49. height: 100%;
  50. }
  51. }
  52. .top_num {
  53. position: absolute;
  54. top: 24rpx; // 垂直对齐设置按钮
  55. right: 98rpx; // 30+48+20=98 预留按钮空间
  56. display: flex;
  57. flex-direction: row;
  58. justify-content: flex-end;
  59. align-items: center;
  60. z-index: 10;
  61. .num_1,
  62. .num_2 {
  63. display: flex;
  64. flex-direction: row;
  65. align-items: center;
  66. justify-content: center;
  67. background: rgba(255, 255, 255, 0.8);
  68. border-radius: 30rpx;
  69. padding: 10rpx 20rpx;
  70. margin-left: 20rpx;
  71. .num_1,
  72. .num_2 {
  73. margin-left: 10rpx; // 缩小间距
  74. padding: 8rpx 16rpx; // 调整内边距
  75. }
  76. text:first-child {
  77. font-size: 24rpx;
  78. line-height: 32rpx;
  79. color: #666;
  80. }
  81. text:last-child {
  82. font-size: 32rpx;
  83. line-height: 32rpx;
  84. font-weight: bold;
  85. color: #333;
  86. }
  87. }
  88. }
  89. .infoBg {
  90. display: flex;
  91. flex-direction: column;
  92. justify-content: flex-start;
  93. align-items: stretch;
  94. width: 690rpx;
  95. height: 320rpx;
  96. margin: 20rpx 30rpx;
  97. margin-top: 90rpx;
  98. background: rgba(255, 255, 255, 0.95);
  99. backdrop-filter: blur(10px);
  100. border-radius: 24rpx;
  101. padding-top: calc(var(--status-bar-height) + 0rpx);
  102. box-shadow: 0 8rpx 20rpx rgba(0, 0, 0, 0.1);
  103. .top_row {
  104. display: flex;
  105. flex-direction: row;
  106. justify-content: space-between;
  107. align-items: flex-start;
  108. padding: 20rpx 0;
  109. .left {
  110. padding-left: 30rpx;
  111. padding-right: 0rpx;
  112. width: 200rpx;
  113. image {
  114. width: 136rpx;
  115. height: 136rpx;
  116. border-radius: 100rpx;
  117. border: solid 4rpx #fff;
  118. }
  119. .level {
  120. display: flex;
  121. flex-direction: row;
  122. justify-content: center;
  123. align-items: center;
  124. height: 32rpx;
  125. padding: 0 12rpx;
  126. margin-left: 10rpx;
  127. border-radius: 12rpx;
  128. background: linear-gradient(90deg, #ff5869 0%, #f83881 100%);
  129. font-size: 20rpx;
  130. color: #fff;
  131. font-weight: normal;
  132. }
  133. }
  134. .right {
  135. color: #333;
  136. width: 500rpx;
  137. font-size: 40rpx;
  138. padding-top: 20rpx;
  139. .nickname {
  140. font-weight: bold;
  141. margin-bottom: 0rpx;
  142. display: flex;
  143. flex-direction: row;
  144. justify-content: flex-start;
  145. align-items: center;
  146. image {
  147. width: 36rpx;
  148. margin-left: 8rpx;
  149. margin-right: 10rpx;
  150. }
  151. .level {
  152. font-weight: normal;
  153. font-size: 32rpx;
  154. }
  155. }
  156. .tags_list {
  157. .tag {
  158. margin-right: 8rpx;
  159. }
  160. }
  161. .join_date {
  162. display: flex;
  163. flex-direction: row;
  164. justify-content: flex-start;
  165. align-items: center;
  166. font-size: 28rpx;
  167. color: #333;
  168. image {
  169. width: 32rpx;
  170. height: 32rpx;
  171. margin-left: 6rpx;
  172. }
  173. }
  174. .follow_info {
  175. display: none;
  176. }
  177. }
  178. }
  179. .bottom_row {
  180. padding: 20rpx 50rpx;
  181. .intro_row {
  182. display: flex;
  183. flex-direction: row;
  184. align-items: center;
  185. margin-bottom: 20rpx;
  186. .intro_text {
  187. color: #999;
  188. font-size: 28rpx;
  189. }
  190. .add_icon {
  191. width: 28rpx;
  192. margin-left: 10rpx;
  193. }
  194. }
  195. .follow_info {
  196. display: flex;
  197. flex-direction: row;
  198. align-items: center;
  199. justify-content: flex-start;
  200. .num {
  201. font-size: 36rpx;
  202. font-weight: bold;
  203. color: #333;
  204. margin-right: 8rpx;
  205. }
  206. .label {
  207. font-size: 28rpx;
  208. color: #999;
  209. }
  210. .separator {
  211. width: 2rpx;
  212. height: 24rpx;
  213. background-color: #e5e5e5;
  214. margin: 0 30rpx;
  215. }
  216. }
  217. }
  218. }
  219. .title {
  220. font-size: 34rpx;
  221. }
  222. }
  223. .header {
  224. padding: 20rpx;
  225. padding-top: 48rpx;
  226. background: linear-gradient(225deg, #cdff9f 0%, #acff5f 30%, #d0ffa5 100%);
  227. min-height: 620rpx;
  228. margin-bottom: calc(-60rpx + var(--status-bar-height));
  229. &.header-isvip {
  230. margin-bottom: calc(-240rpx + var(--status-bar-height));
  231. }
  232. .card-box {
  233. width: 100%;
  234. min-height: 490rpx;
  235. position: relative;
  236. left: 0;
  237. top: 0%;
  238. overflow: hidden;
  239. .card-top {
  240. height: 410rpx;
  241. width: 100%;
  242. background: url("../../static/me/my-card-bg.png") top center / 100% auto,
  243. #fff;
  244. position: absolute;
  245. top: 0%;
  246. left: 0;
  247. z-index: 5;
  248. padding: 24rpx 0;
  249. padding-top: 16rpx;
  250. box-sizing: border-box;
  251. border-radius: 25rpx;
  252. .top-box {
  253. display: flex;
  254. justify-content: space-between;
  255. align-items: center;
  256. // padding-top: 8rpx;
  257. background: url("../../static/me/car-top-bg-center.png") top center/
  258. 146rpx 50rpx no-repeat;
  259. padding-right: 24rpx;
  260. padding-left: 24rpx;
  261. .hello-box {
  262. font-family: "CustomFont" !important;
  263. font-size: 36rpx;
  264. font-weight: 700;
  265. }
  266. .settingBtn-box {
  267. width: 148rpx;
  268. display: flex;
  269. align-items: center;
  270. justify-content: space-between;
  271. image {
  272. width: 64rpx;
  273. height: 64rpx;
  274. }
  275. }
  276. }
  277. .userinfo-box {
  278. min-height: 120rpx;
  279. width: 100%;
  280. display: flex;
  281. padding-right: 24rpx;
  282. padding-left: 24rpx;
  283. padding-top: 18rpx;
  284. .avator {
  285. width: 120rpx;
  286. height: 120rpx;
  287. margin-right: 16rpx;
  288. }
  289. .userinfo-right {
  290. .nickname {
  291. font-weight: bold;
  292. margin-bottom: 0rpx;
  293. display: flex;
  294. flex-direction: row;
  295. justify-content: flex-start;
  296. align-items: center;
  297. display: flex;
  298. padding-bottom: 12rpx;
  299. > text {
  300. max-width: 380rpx;
  301. font-family: "PingFang SC-Bold";
  302. font-weight: 400;
  303. font-size: 36rpx;
  304. }
  305. image {
  306. width: 36rpx;
  307. margin-left: 8rpx;
  308. margin-right: 10rpx;
  309. }
  310. .level {
  311. font-weight: 400;
  312. font-size: 22rpx;
  313. font-family: "PingFang SC-Bold";
  314. background: linear-gradient(360deg, #acf934 0%, #ffe439 100%);
  315. border-radius: 8rpx;
  316. padding: 2rpx 8rpx;
  317. }
  318. }
  319. .label {
  320. height: 40rpx;
  321. // height: 110rpx;
  322. overflow: hidden;
  323. > view {
  324. color: #acf934;
  325. font-family: "PingFang SC-Medium";
  326. font-weight: 400;
  327. font-size: 24rpx;
  328. background: #1f1f1f;
  329. border-radius: 6px 6px 6px 6px;
  330. display: inline-block;
  331. margin-right: 10rpx;
  332. margin-bottom: 10rpx;
  333. padding: 6rpx 16rpx;
  334. }
  335. }
  336. }
  337. }
  338. .intro_row {
  339. width: 100%;
  340. display: flex;
  341. align-items: center;
  342. padding-right: 24rpx;
  343. padding-left: 24rpx;
  344. padding-top: 12rpx;
  345. padding-bottom: 12rpx;
  346. .intro_text {
  347. color: #1f1f1f;
  348. font-size: 24rpx;
  349. font-family: "PingFang SC-Bold";
  350. font-weight: 400;
  351. padding-right: 0rpx;
  352. ::v-deep.uv-text__value{
  353. font-size: 26rpx !important;
  354. }
  355. }
  356. .add_icon {
  357. width: 28rpx;
  358. margin-left: 10rpx;
  359. }
  360. }
  361. .line{
  362. width: 100%;
  363. height: 2rpx;
  364. background-color: #F2F6F2;
  365. margin:10rpx 0;
  366. margin-bottom: 20rpx;
  367. }
  368. .bom {
  369. display: flex;
  370. align-items: center;
  371. justify-content: space-between;
  372. padding-right: 24rpx;
  373. padding-left: 24rpx;
  374. .follow_info {
  375. display: flex;
  376. align-items: center;
  377. justify-content: space-between;
  378. max-width: 300rpx;
  379. .follow-box {
  380. display: flex;
  381. flex-direction: column;
  382. align-items: center;
  383. justify-content: center;
  384. text-align: center;
  385. }
  386. .num {
  387. width: 100%;
  388. font-size: 36rpx;
  389. font-weight: bold;
  390. color: #333;
  391. }
  392. .label {
  393. width: 100%;
  394. font-size: 24rpx;
  395. color: #999;
  396. }
  397. .separator {
  398. width: 2rpx;
  399. height: 24rpx;
  400. background-color: #e5e5e5;
  401. margin: 0 30rpx;
  402. }
  403. }
  404. .points-box {
  405. display: flex;
  406. justify-content: space-between;
  407. .points {
  408. display: flex;
  409. align-items: center;
  410. background: #f2f6f2;
  411. border-radius: 30rpx;
  412. padding: 6rpx 12rpx 6rpx 8rpx;
  413. &:first-child {
  414. margin-right: 18rpx;
  415. }
  416. image {
  417. width: 40rpx;
  418. height: 40rpx;
  419. }
  420. text {
  421. display: inline-block;
  422. padding-left: 4rpx;
  423. line-height: 0;
  424. }
  425. }
  426. }
  427. }
  428. .follow_info {
  429. // display: none;
  430. }
  431. }
  432. .card-bom {
  433. width: 100%;
  434. height: 104rpx;
  435. background: url("../../static/me/my-card-bom-bg.png") top center / 100%
  436. auto;
  437. position: absolute;
  438. bottom: 0%;
  439. left: 0;
  440. padding: 0 28rpx;
  441. padding-top: 20rpx;
  442. box-sizing: border-box;
  443. display: flex;
  444. align-items: center;
  445. justify-content: space-between;
  446. transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  447. box-shadow: 0 -2rpx 8rpx rgba(0, 0, 0, 0.05);
  448. &:active {
  449. transform: scale(0.98);
  450. box-shadow: 0 -1rpx 4rpx rgba(0, 0, 0, 0.05);
  451. }
  452. > image {
  453. width: 44rpx;
  454. height: 44rpx;
  455. transition: all 0.3s ease;
  456. }
  457. .content-box {
  458. height: 100%;
  459. display: flex;
  460. align-items: center;
  461. color: #acf934;
  462. transition: all 0.3s ease;
  463. image {
  464. width: 34rpx;
  465. height: 34rpx;
  466. margin-right: 8rpx;
  467. transition: all 0.3s ease;
  468. }
  469. }
  470. }
  471. }
  472. }
  473. .thread {
  474. height: 210rpx;
  475. padding: 50rpx;
  476. font-size: 52rpx;
  477. color: #6e6a6a;
  478. padding-top: 80rpx;
  479. }
  480. .myinfo {
  481. width: 100%;
  482. display: flex;
  483. flex-direction: column;
  484. border-radius: 28rpx 28rpx 0 0;
  485. padding: 24rpx 20rpx;
  486. padding-top: 14rpx;
  487. justify-content: flex-start;
  488. box-sizing: border-box;
  489. background: #fff;
  490. .line {
  491. width: 100%;
  492. height: 2rpx;
  493. background: #f2f6f2;
  494. margin-bottom: 8rpx;
  495. margin-top: 32rpx;
  496. }
  497. .subtitle {
  498. display: flex;
  499. .item {
  500. padding: 0 43rpx;
  501. font-weight: 400;
  502. font-size: 28rpx;
  503. color: #999999;
  504. font-family: "PingFang SC-Medium";
  505. &.active {
  506. font-family: "PingFang SC-Bold";
  507. font-weight: 400;
  508. font-size: 28rpx;
  509. color: #1f1f1f;
  510. }
  511. }
  512. }
  513. .tablist {
  514. display: flex;
  515. justify-content: flex-start;
  516. box-sizing: border-box;
  517. background: #ffffff;
  518. .item {
  519. padding: 15rpx 38rpx;
  520. color: #1f1f1f;
  521. font-size: 28rpx;
  522. background: #f2f6f2;
  523. margin-right: 20rpx;
  524. border-radius: 30rpx;
  525. position: relative;
  526. left: 0;
  527. top: 0;
  528. line-height: 1;
  529. transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  530. // box-shadow: 0 2rpx 8rpx rgba(0, 0, 0, 0.05);
  531. &:active {
  532. transform: scale(0.95);
  533. // box-shadow: 0 1rpx 4rpx rgba(0, 0, 0, 0.05);
  534. }
  535. .indicator-triangle {
  536. position: absolute;
  537. bottom: -10rpx;
  538. left: 50%;
  539. transform: translateX(-50%);
  540. width: 0;
  541. height: 0;
  542. border-left: 10rpx solid transparent;
  543. border-right: 10rpx solid transparent;
  544. border-top: 10rpx solid #acf934;
  545. display: none;
  546. transition: all 0.3s ease;
  547. }
  548. &.active {
  549. background: #acf934;
  550. font-family: "CustomFont" !important;
  551. box-shadow: 0 4rpx 12rpx rgba(172, 249, 52, 0.3);
  552. .indicator-triangle {
  553. display: block;
  554. transform: translateX(-50%) scale(1.2);
  555. }
  556. }
  557. }
  558. }
  559. .numlist {
  560. display: flex;
  561. flex-direction: row;
  562. justify-content: center;
  563. align-items: center;
  564. .item {
  565. display: flex;
  566. justify-content: center;
  567. padding: 20rpx;
  568. border-radius: 38rpx;
  569. width: 316rpx;
  570. height: 186rpx;
  571. image {
  572. width: 64rpx;
  573. }
  574. .num {
  575. color: #fff;
  576. font-size: 36rpx;
  577. text-align: center;
  578. display: flex;
  579. flex-direction: column;
  580. justify-content: center;
  581. align-items: center;
  582. .name {
  583. font-size: 28rpx;
  584. color: #bababa;
  585. margin-top: 12rpx;
  586. }
  587. }
  588. }
  589. }
  590. .numlist1 {
  591. display: grid;
  592. grid-template-columns: repeat(2, 1fr);
  593. }
  594. .numlist2 {
  595. display: grid;
  596. grid-template-columns: repeat(2, 1fr);
  597. .num {
  598. position: relative;
  599. left: 0;
  600. top: 0;
  601. transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  602. &.clickable {
  603. cursor: pointer;
  604. box-shadow: 0 2rpx 8rpx rgba(0, 0, 0, 0.05);
  605. &:active {
  606. transform: scale(0.98);
  607. box-shadow: 0 1rpx 4rpx rgba(0, 0, 0, 0.05);
  608. }
  609. }
  610. .incomplete-bg {
  611. position: absolute;
  612. left: 0;
  613. top: 0;
  614. width: 346rpx;
  615. height: 520rpx;
  616. transition: all 0.3s ease;
  617. border-radius: 16rpx;
  618. }
  619. .incomplete-bg2 {
  620. position: absolute;
  621. left: 0;
  622. top: 50%;
  623. width: 346rpx;
  624. transform: translateY(-50%);
  625. transition: all 0.3s ease;
  626. border-radius: 16rpx;
  627. }
  628. .maskLayer {
  629. background: rgba(0, 0, 0, 0.4);
  630. position: absolute;
  631. left: 0;
  632. top: 0;
  633. width: 346rpx;
  634. height: 520rpx;
  635. transition: all 0.3s ease;
  636. border-radius: 16rpx;
  637. }
  638. .queue-status {
  639. position: absolute;
  640. left: 0;
  641. top: 0;
  642. width: 346rpx;
  643. height: 520rpx;
  644. color: #fff;
  645. transition: all 0.3s ease;
  646. .status-text {
  647. position: absolute;
  648. left: 0;
  649. top: 0;
  650. width: 100%;
  651. height: 100%;
  652. display: flex;
  653. justify-content: center;
  654. align-items: center;
  655. transition: all 0.3s ease;
  656. .state-img {
  657. height: 104rpx;
  658. width: 220rpx;
  659. position: absolute;
  660. left: 50%;
  661. top: 50%;
  662. transform: translate(-50%, -50%);
  663. transition: all 0.3s ease;
  664. }
  665. }
  666. }
  667. .name {
  668. transition: all 0.3s ease;
  669. }
  670. }
  671. .loading-more,
  672. .no-more {
  673. text-align: center;
  674. padding: 20rpx 0;
  675. color: #999;
  676. font-size: 28rpx;
  677. }
  678. }
  679. .btn_submit {
  680. width: 660rpx;
  681. height: 96rpx;
  682. margin: 0 auto;
  683. border: 2rpx solid #404040;
  684. border-radius: 28rpx;
  685. font-weight: bold;
  686. font-size: 32rpx;
  687. color: #ff2a95;
  688. display: flex;
  689. flex-direction: row;
  690. justify-content: center;
  691. align-items: center;
  692. }
  693. .blankHeight {
  694. height: 100rpx;
  695. position: absolute;
  696. left: 50%;
  697. top: 50%;
  698. transform: translate(-50%, -50%);
  699. }
  700. }
  701. .reserveASeatBom {
  702. width: 100%;
  703. height: calc(var(--window-bottom) + 200rpx);
  704. }