index.vue 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782
  1. <template>
  2. <view class="">
  3. <view class="box" style="">
  4. <view class="nabBar">
  5. <u-navbar title="首页" :placeholder="true" bgColor="rgba(255,255,255,0)" :leftIconSize="0" titleStyle="font-weight:bold;color:#7a5831">
  6. <view @click="cityShow = true" class="u-nav-slot" slot="left">
  7. <text>{{ city }}</text>
  8. <view class="">
  9. <uni-icons type="bottom" size="20"></uni-icons>
  10. </view>
  11. </view>
  12. </u-navbar>
  13. </view>
  14. <!-- 城市选择 -->
  15. <u-action-sheet
  16. @select="cityClick"
  17. :actions="cityList"
  18. :title="title"
  19. :show="cityShow"
  20. :closeOnClickOverlay="true"
  21. :closeOnClickAction="true"
  22. @close="close()"
  23. ></u-action-sheet>
  24. <view class="group_1">
  25. <view class="group_25 banxin2">
  26. <u-swiper
  27. keyName="image"
  28. :list="mn_swiperList"
  29. imgMode="aspectFill"
  30. :height="120"
  31. :indicator="true"
  32. :autoplay="true"
  33. :circular="true"
  34. indicatorStyle="bottom: 10px"
  35. @click="bannerClick"
  36. indicatorMode="dot"
  37. indicatorActiveColor="#fff"
  38. indicatorInactiveColor="rgba(255, 255, 255, 0.35)"
  39. ></u-swiper>
  40. </view>
  41. </view>
  42. <view class="block_8">
  43. <view @click="moreBtn" class="an" style="width: 650rpx; margin: auto; margin-top: 25rpx">
  44. <u-notice-bar bgColor="#efd9ba" text="欢迎进入闽南魂"></u-notice-bar>
  45. </view>
  46. <view class="text-wrapper_17">
  47. <text lines="1" class="text_32">闽南文化推荐</text>
  48. </view>
  49. <view class="grid_2">
  50. <view class="group_23">
  51. <view class="box_19" @click="functionBtn(index)" v-for="(item, index) in functionList" :key="item.id" :class="{ mnjs: index == 0 }">
  52. <image class="box_19_img" :src="item.image"></image>
  53. <view class="image-text_13" :class="{ mnjs2: index == 0 }">
  54. <image :src="item.icon" class="image_20"></image>
  55. <text lines="1" class="text-group_10">{{ item.title }}</text>
  56. </view>
  57. </view>
  58. </view>
  59. <view class="text-wrapper_18">
  60. <text lines="1" class="text_23">精彩村史</text>
  61. <text lines="1" class="text_24" @click="cs_listBtn">查看更多》</text>
  62. </view>
  63. <view class="banxin2" style="display: flex; justify-content: space-betweenl; margin-left: 12rpx">
  64. <view class="" style="width: 305rpx">
  65. <u-swiper
  66. keyName="image"
  67. height="150"
  68. :autoplay="true"
  69. circular
  70. :list="bannerlist1"
  71. previousMargin="30"
  72. nextMargin="30"
  73. radius="5"
  74. bgColor="#ffffff"
  75. ></u-swiper>
  76. </view>
  77. <view class="" style="width: 305rpx; margin-left: 32rpx">
  78. <u-swiper
  79. keyName="image"
  80. height="150"
  81. :autoplay="true"
  82. :circular="true"
  83. :list="bannerlist2"
  84. previousMargin="30"
  85. nextMargin="30"
  86. radius="5"
  87. bgColor="#ffffff"
  88. ></u-swiper>
  89. </view>
  90. </view>
  91. <view class="text-wrapper_18">
  92. <text lines="1" class="text_23">精彩推荐</text>
  93. <!-- <text lines="1" class="text_8">查看更多》</text> -->
  94. </view>
  95. <view class="ad">
  96. <view class="box_22" @click="recommendBtn(index)" v-for="(item, index) in recommendList" :key="item.id">
  97. <view class="block_5">
  98. <image style="width: 100%; height: 100%; border-radius: 0 50rpx 0 20rpx" :src="item.thumbnail"></image>
  99. <view class="tag_1">
  100. <text lines="1" class="text_9">{{ item.type_text }}</text>
  101. </view>
  102. <view class="tag_2">
  103. <text lines="1" class="text_10">{{ item.title }}</text>
  104. </view>
  105. </view>
  106. </view>
  107. </view>
  108. </view>
  109. </view>
  110. </view>
  111. <mntabBar footerTab="0" :messageCount="0"></mntabBar>
  112. </view>
  113. </template>
  114. <script>
  115. import { mapState } from 'vuex';
  116. let that;
  117. export default {
  118. data() {
  119. return {
  120. loadTriggered: false,
  121. isLoading: false,
  122. page: '1',
  123. main_body_id: '' /* 主体id */,
  124. user: {} /* 用户信息*/,
  125. city: '厦门' /* 选中城市 */,
  126. cityShow: false,
  127. cityList: [],
  128. functionList: [] /* 首页功能菜单 */,
  129. recommendList: [],
  130. mn_swiperList: [],
  131. bannerlist1: [],
  132. bannerlist2: []
  133. };
  134. },
  135. /* 页面触底 */
  136. onReachBottom() {
  137. if (this.isLoading) {
  138. return;
  139. } else {
  140. this.page++;
  141. this.getFlagList();
  142. }
  143. },
  144. onLoad(option) {
  145. that = this;
  146. this.getCity();
  147. this.main_body_id = this.$db.get('main_body_id');
  148. if (this.main_body_id) {
  149. this.getIndexBanner();
  150. this.getIndexFunction();
  151. this.getFlagList();
  152. this.getHistoryMuseum();
  153. }
  154. },
  155. methods: {
  156. // 首页轮播
  157. getIndexBanner() {
  158. this.$api.getIndexBanner(
  159. {
  160. main_body_id: this.main_body_id
  161. },
  162. function (res) {
  163. that.mn_swiperList = res.data;
  164. }
  165. );
  166. },
  167. // 功能图片
  168. getIndexFunction() {
  169. this.$api.getIndexFunction({ main_body_id: this.main_body_id }, function (res) {
  170. let iconList = ['/static/image/js_icon.png', '/static/image/jz_icon.png', '/static/image/ms_icon.png', '/static/image/fy_icon.png', '/static/image/mn_icon.png'];
  171. that.functionList = res.data;
  172. that.functionList.forEach((item, index) => {
  173. item.icon = iconList[index];
  174. });
  175. // console.log(that.functionList, 3333333);
  176. });
  177. },
  178. // 获取城市主体
  179. getCity() {
  180. this.$api.getCity({ main_body_id: '' }, function (res) {
  181. that.cityList = res.data;
  182. that.cityList.forEach((item) => {
  183. if (item.isChecked) {
  184. that.$db.set('main_body_id', item.main_body_id);
  185. that.main_body_id = item.main_body_id; // 设置 main_body_id
  186. // 增加这一部分以触发后续请求
  187. if (!that.loadTriggered) {
  188. that.loadTriggered = true;
  189. that.getIndexBanner();
  190. that.getIndexFunction();
  191. that.getFlagList();
  192. that.getHistoryMuseum();
  193. }
  194. }
  195. });
  196. });
  197. },
  198. // 城市切换
  199. cityClick(e) {
  200. this.city = e.name;
  201. this.$db.set('main_body_id', e.main_body_id);
  202. this.user = this.$common.userInfo();
  203. let mainBodyUserInfo = this.$db.get('mainBodyUserInfo');
  204. let id = mainBodyUserInfo.id;
  205. if (this.user == 'undefined' || this.user == '' || this.user == null) {
  206. // this.$common.toLogin();
  207. } else {
  208. // console.log(id, e.main_body_id, 877878);
  209. this.$api.refreshUser(
  210. {
  211. main_body_id: e.main_body_id,
  212. main_body_user_id: id
  213. },
  214. function (res) {
  215. // console.log(res, 131313);
  216. that.user = res.data.user;
  217. that.$db.set('user', that.user);
  218. that.$db.set('mainBodyUserInfo', res.data.mainBodyUserInfo);
  219. }
  220. );
  221. }
  222. // console.log(e, 'index');
  223. // console.log(user, 'user');
  224. that.$common.successToShow('切换成功');
  225. },
  226. // 功能菜单
  227. functionBtn(i) {
  228. uni.navigateTo({
  229. url: this.functionList[i].page
  230. });
  231. },
  232. // 获取精彩推荐内容
  233. getFlagList() {
  234. this.isLoading = true;
  235. this.$api.getFlagList({ main_body_id: this.main_body_id, page: this.page, pageSize: '10', flag: 'recommend' }, function (res) {
  236. // console.log(res, 666666666);
  237. that.isLoading = false;
  238. that.recommendList = [...that.recommendList, ...res.data];
  239. });
  240. },
  241. // 史馆列表
  242. getHistoryMuseum() {
  243. this.$api.getHistoryMuseum({ main_body_id: this.main_body_id }, function (res) {
  244. const keys = Object.keys(res.data);
  245. // console.log(keys, 'keys');
  246. let valuesArray = [];
  247. keys.forEach((key) => {
  248. valuesArray.push(res.data[key]);
  249. });
  250. // 取前三个和后三个元素
  251. that.bannerlist1 = valuesArray.slice(0, 3);
  252. that.bannerlist2 = valuesArray.slice(-3);
  253. // console.log(that.bannerlist2);
  254. });
  255. },
  256. //精彩推荐内容
  257. recommendBtn(i) {
  258. this.$common.navigateTo(this.recommendList[i].page);
  259. },
  260. // 闽南文化推荐,
  261. moreBtn() {
  262. uni.navigateTo({
  263. url: '/index_fenbao/mn_wenhua/mn_wenhua'
  264. });
  265. },
  266. // 村史列表
  267. cs_listBtn() {
  268. uni.navigateTo({
  269. url: '/index_fenbao/cs_liebiao/cs_liebiao'
  270. });
  271. },
  272. // 点击轮播
  273. bannerClick(index) {
  274. if (this.mn_swiperList[index].page != null) {
  275. // console.log(this.mn_swiperList[index].page);
  276. uni.navigateTo({
  277. url: this.mn_swiperList[index].page
  278. });
  279. }
  280. },
  281. close() {
  282. this.cityShow = false;
  283. }
  284. }
  285. };
  286. </script>
  287. <style>
  288. /deep/.u-swiper-indicator__wrapper__dot--active {
  289. width: 5px !important;
  290. }
  291. /deep/.u-reset-button.data-v-b62b882e {
  292. height: 120rpx !important;
  293. }
  294. /deep/.u-line.data-v-727e452e {
  295. display: none !important;
  296. }
  297. /deep/.u-notice-bar.data-v-24c07869 {
  298. width: 650rpx !important;
  299. margin-left: 50rpx !important;
  300. }
  301. .box {
  302. height: auto;
  303. width: 100%;
  304. background-image: url('https://huli-app.wenlvti.net/app_static/minnanhun/image/index_bg.jpg');
  305. background-size: 100% 100%;
  306. background-color: #f8f8f8;
  307. background-attachment: fixed;
  308. position: relative;
  309. display: flex;
  310. flex-direction: column;
  311. }
  312. /deep/.u-icon__icon.data-v-2ee87dc9 {
  313. top: 0 !important;
  314. left: 5rpx !important;
  315. }
  316. .mnjs {
  317. width: 650rpx !important;
  318. }
  319. .mnjs2 {
  320. margin: 35rpx 0 0 225rpx !important;
  321. }
  322. .qh_icon {
  323. position: absolute;
  324. top: 0;
  325. left: 0;
  326. }
  327. .banxin {
  328. width: 100%;
  329. height: 100rpx;
  330. margin: auto;
  331. /* background-color: yellowgreen; */
  332. }
  333. .banxin2 {
  334. width: 90%;
  335. margin: auto;
  336. }
  337. .u-nav-slot {
  338. display: flex;
  339. margin-left: 20rpx;
  340. }
  341. .nabBar {
  342. /* height: 200rpx; */
  343. /* background-image: url('https://huli-app.wenlvti.net/app_static/minnanhun/image/shouyeBJ.png');
  344. background-size: cover; */
  345. }
  346. .group_1 {
  347. width: 720rpx;
  348. display: flex;
  349. margin-top: 130rpx;
  350. margin-left: 12rpx;
  351. flex-direction: column;
  352. justify-content: flex-end;
  353. }
  354. .group_25 {
  355. margin-top: -120rpx;
  356. display: flex;
  357. flex-direction: column;
  358. }
  359. .image_3 {
  360. width: 696rpx;
  361. height: 28rpx;
  362. margin: 13rpx 0 0 29rpx;
  363. }
  364. .nav-bar_4 {
  365. width: 746rpx;
  366. height: 81rpx;
  367. margin-top: 10rpx;
  368. flex-direction: row;
  369. display: flex;
  370. }
  371. .group_33 {
  372. height: 26rpx;
  373. display: flex;
  374. flex-direction: column;
  375. width: 147rpx;
  376. margin: 23rpx 0 0 32rpx;
  377. }
  378. .group_34 {
  379. width: 147rpx;
  380. height: 26rpx;
  381. flex-direction: row;
  382. display: flex;
  383. justify-content: space-between;
  384. }
  385. .text_21 {
  386. width: 110rpx;
  387. height: 26rpx;
  388. overflow-wrap: break-word;
  389. color: rgba(49, 37, 32, 1);
  390. font-size: 28rpx;
  391. font-family: SourceHanSansCN-Regular;
  392. font-weight: normal;
  393. text-align: left;
  394. white-space: nowrap;
  395. line-height: 28rpx;
  396. }
  397. .label_5 {
  398. width: 23rpx;
  399. height: 23rpx;
  400. margin-top: 1rpx;
  401. }
  402. .text_22 {
  403. width: 68rpx;
  404. height: 34rpx;
  405. overflow-wrap: break-word;
  406. color: rgba(18, 18, 18, 1);
  407. font-size: 36rpx;
  408. font-family: SourceHanSansCN-Regular;
  409. font-weight: normal;
  410. text-align: left;
  411. white-space: nowrap;
  412. line-height: 36rpx;
  413. margin: 18rpx 0 0 143rpx;
  414. }
  415. .applet-top-bar_1 {
  416. background-color: rgba(255, 255, 255, 1);
  417. border-radius: 28rpx;
  418. width: 155rpx;
  419. height: 56rpx;
  420. border: 1px solid rgba(241, 241, 241, 1);
  421. flex-direction: row;
  422. display: flex;
  423. margin: 7rpx 25rpx 0 176rpx;
  424. }
  425. .image_4 {
  426. width: 53rpx;
  427. height: 31rpx;
  428. margin: 13rpx 0 0 24rpx;
  429. }
  430. .label_1 {
  431. width: 38rpx;
  432. height: 38rpx;
  433. margin: 9rpx 21rpx 0 19rpx;
  434. }
  435. .block_8 {
  436. width: 750rpx;
  437. display: flex;
  438. flex-direction: column;
  439. }
  440. .text_1 {
  441. width: 319rpx;
  442. height: 23rpx;
  443. overflow-wrap: break-word;
  444. color: rgba(153, 153, 153, 1);
  445. font-size: 24rpx;
  446. font-family: PingFang-SC-Regular;
  447. font-weight: normal;
  448. text-align: left;
  449. white-space: nowrap;
  450. line-height: 24rpx;
  451. margin: 21rpx 281rpx 0 23rpx;
  452. }
  453. .text-wrapper_17 {
  454. width: 667rpx;
  455. height: 34rpx;
  456. flex-direction: row;
  457. display: flex;
  458. justify-content: space-between;
  459. margin: 35rpx 0 0 51rpx;
  460. }
  461. .text_32 {
  462. width: 211rpx;
  463. height: 34rpx;
  464. overflow-wrap: break-word;
  465. color: rgba(49, 37, 32, 1);
  466. font-size: 36rpx;
  467. font-family: Adobe Heiti Std R;
  468. font-weight: normal;
  469. text-align: left;
  470. white-space: nowrap;
  471. line-height: 36rpx;
  472. }
  473. .text_33 {
  474. color: rgba(102, 102, 102, 1);
  475. font-size: 24rpx;
  476. line-height: 24rpx;
  477. margin-top: 7rpx;
  478. }
  479. .grid_2 {
  480. flex-wrap: wrap;
  481. display: flex;
  482. flex-direction: row;
  483. margin: 27rpx 0 0 42rpx;
  484. }
  485. .group_js {
  486. height: 166rpx;
  487. display: flex;
  488. flex-direction: column;
  489. margin: 20rpx 27rpx 0rpx 30rpx;
  490. }
  491. .box_js {
  492. height: 166rpx;
  493. position: relative;
  494. display: flex;
  495. flex-direction: row;
  496. }
  497. .box_19_js {
  498. width: 100%;
  499. height: 100%;
  500. border-radius: 20rpx;
  501. }
  502. .box_19_js ::before {
  503. content: '';
  504. display: block;
  505. position: absolute; /* 设置绝对定位 */
  506. top: 0;
  507. left: 0;
  508. width: 100%;
  509. height: 100%;
  510. background-color: rgba(0, 0, 0, 0.2); /* 设置遮罩层颜色和透明度 */
  511. z-index: 1;
  512. }
  513. .image-text_js {
  514. width: 233rpx;
  515. height: 102rpx;
  516. position: absolute;
  517. display: flex;
  518. flex-direction: column;
  519. justify-content: space-between;
  520. margin: 35rpx 0 0 250rpx;
  521. z-index: 2;
  522. }
  523. .image_js {
  524. width: 75rpx;
  525. height: 65rpx;
  526. margin-left: 72rpx;
  527. }
  528. .text-group_js {
  529. width: 233rpx;
  530. height: 27rpx;
  531. overflow-wrap: break-word;
  532. color: rgba(255, 228, 176, 1);
  533. font-size: 28rpx;
  534. font-family: Adobe Heiti Std R;
  535. font-weight: normal;
  536. text-align: center;
  537. white-space: nowrap;
  538. line-height: 28rpx;
  539. margin-top: 10rpx;
  540. }
  541. .group_23 {
  542. width: 665rpx;
  543. display: flex;
  544. flex-wrap: wrap;
  545. justify-content: space-between;
  546. margin: 0 60rpx 32rpx 6rpx;
  547. }
  548. .box_19 {
  549. width: 312rpx;
  550. height: 166rpx;
  551. position: relative;
  552. display: flex;
  553. flex-direction: row;
  554. margin-top: 20rpx;
  555. }
  556. .box_19_img {
  557. width: 100%;
  558. height: 100%;
  559. border-radius: 20rpx;
  560. }
  561. .box_19_img ::before {
  562. content: '';
  563. display: block;
  564. position: absolute; /* 设置绝对定位 */
  565. top: 0;
  566. left: 0;
  567. width: 100%;
  568. height: 100%;
  569. background-color: rgba(0, 0, 0, 0.2); /* 设置遮罩层颜色和透明度 */
  570. z-index: 1;
  571. }
  572. .image-text_13 {
  573. width: 233rpx;
  574. height: 102rpx;
  575. position: absolute;
  576. display: flex;
  577. flex-direction: column;
  578. justify-content: space-between;
  579. margin: 35rpx 0 0 45rpx;
  580. z-index: 2;
  581. }
  582. .image_20 {
  583. width: 75rpx;
  584. height: 65rpx;
  585. margin-left: 76rpx;
  586. }
  587. .text-group_10 {
  588. width: 233rpx;
  589. height: 27rpx;
  590. overflow-wrap: break-word;
  591. color: rgba(255, 228, 176, 1);
  592. font-size: 28rpx;
  593. font-family: Adobe Heiti Std R;
  594. font-weight: normal;
  595. text-align: center;
  596. white-space: nowrap;
  597. line-height: 28rpx;
  598. margin-top: 10rpx;
  599. }
  600. .group_24 {
  601. border-radius: 20rpx;
  602. height: 166rpx;
  603. margin-bottom: 32rpx;
  604. display: flex;
  605. flex-direction: column;
  606. width: 330rpx;
  607. }
  608. .text-group_11 {
  609. width: 110rpx;
  610. height: 27rpx;
  611. overflow-wrap: break-word;
  612. color: rgba(255, 228, 176, 1);
  613. font-size: 28rpx;
  614. font-family: Adobe Heiti Std R;
  615. font-weight: normal;
  616. text-align: center;
  617. white-space: nowrap;
  618. line-height: 28rpx;
  619. margin-top: 10rpx;
  620. }
  621. .group_13 {
  622. border-radius: 20rpx;
  623. width: 330rpx;
  624. height: 166rpx;
  625. display: flex;
  626. flex-direction: column;
  627. margin: 0 27rpx 32rpx 0;
  628. }
  629. .group_14 {
  630. border-radius: 20rpx;
  631. height: 166rpx;
  632. margin-bottom: 32rpx;
  633. display: flex;
  634. flex-direction: column;
  635. width: 330rpx;
  636. }
  637. .image-text_15 {
  638. width: 193rpx;
  639. height: 116rpx;
  640. display: flex;
  641. flex-direction: column;
  642. justify-content: space-between;
  643. margin: 20rpx 0 0 68rpx;
  644. }
  645. .image_23 {
  646. width: 93rpx;
  647. height: 83rpx;
  648. margin-left: 51rpx;
  649. }
  650. .text-group_6 {
  651. width: 193rpx;
  652. height: 27rpx;
  653. overflow-wrap: break-word;
  654. color: rgba(255, 228, 176, 1);
  655. font-size: 28rpx;
  656. font-family: Adobe Heiti Std R;
  657. font-weight: normal;
  658. text-align: center;
  659. white-space: nowrap;
  660. line-height: 28rpx;
  661. margin-top: 6rpx;
  662. }
  663. .text-wrapper_18 {
  664. width: 669rpx;
  665. height: 34rpx;
  666. flex-direction: row;
  667. display: flex;
  668. justify-content: space-between;
  669. margin-top: 45rpx;
  670. margin-bottom: 40rpx;
  671. }
  672. .text_23 {
  673. width: 142rpx;
  674. height: 34rpx;
  675. color: #312520;
  676. font-size: 36rpx;
  677. font-weight: normal;
  678. text-align: left;
  679. white-space: nowrap;
  680. line-height: 36rpx;
  681. }
  682. .text_24 {
  683. color: rgba(102, 102, 102, 1);
  684. font-size: 24rpx;
  685. line-height: 24rpx;
  686. margin-top: 7rpx;
  687. }
  688. .text_8 {
  689. color: rgba(102, 102, 102, 1);
  690. font-size: 24rpx;
  691. line-height: 24rpx;
  692. margin-top: 7rpx;
  693. }
  694. .box_22 {
  695. height: 345rpx;
  696. display: flex;
  697. flex-direction: column;
  698. width: 686rpx;
  699. margin-bottom: 50rpx;
  700. }
  701. .block_5 {
  702. position: relative;
  703. height: 345rpx;
  704. width: 645rpx;
  705. display: flex;
  706. flex-direction: column;
  707. margin-left: 9rpx;
  708. }
  709. .tag_1 {
  710. position: absolute;
  711. background-color: rgba(77, 113, 153, 1);
  712. border-radius: 9rpx 9rpx 32rpx 0rpx;
  713. height: 48rpx;
  714. display: flex;
  715. flex-direction: column;
  716. width: 86rpx;
  717. }
  718. .tag_2 {
  719. position: absolute;
  720. bottom: 36rpx;
  721. right: 20rpx;
  722. }
  723. .text_9 {
  724. width: 47rpx;
  725. height: 23rpx;
  726. overflow-wrap: break-word;
  727. color: rgba(255, 255, 255, 1);
  728. font-size: 24rpx;
  729. font-family: SourceHanSansCN-Bold;
  730. font-weight: 700;
  731. text-align: left;
  732. white-space: nowrap;
  733. line-height: 24rpx;
  734. margin: 12rpx 0 0 19rpx;
  735. }
  736. .text-wrapper_20 {
  737. width: 147rpx;
  738. height: 29rpx;
  739. display: flex;
  740. flex-direction: row;
  741. margin: 232rpx 0 36rpx 518rpx;
  742. }
  743. .text_10 {
  744. width: 147rpx;
  745. height: 29rpx;
  746. overflow-wrap: break-word;
  747. color: #ffffff;
  748. font-size: 34rpx;
  749. font-family: Adobe Heiti Std R;
  750. font-weight: normal;
  751. text-align: left;
  752. white-space: nowrap;
  753. line-height: 30rpx;
  754. }
  755. </style>