details.vue 36 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486
  1. <template>
  2. <view class="index-main">
  3. <view class="vheight"></view>
  4. <!-- <audio id="audio" src="/static/image/home/bj.mp3" loop></audio> -->
  5. <view class="details">
  6. <!-- nav start -->
  7. <view class="details_title">
  8. <view class="details_nav"></view>
  9. <view class="details-title_head flex">
  10. <view class="details_title_return" @click="returnTop"><image src="/static/image/publice/fanhui@2x.png" mode=""></image></view>
  11. <view class="details_title_name">{{ boxDetail.box_name }}</view>
  12. <!-- <view class="details_title_mp3" @click="changePlay">
  13. <image :src="isPlay ? '/static/image/home/bofang@2x.png' : '/static/image/home/guanbiyinyue@2x.png' " mode=""></image>
  14. </view> -->
  15. </view>
  16. </view>
  17. </view>
  18. <!-- nav end -->
  19. <!-- 灯光 -->
  20. <view class="bjt">
  21. <!-- <image class="light" src="/h5/static/image/new_home/dg.png" mode="widthFix"></image> -->
  22. <!-- 上半部分 -->
  23. <view class="top">
  24. <!-- <view class="title">
  25. <view class="oval" @click="toRecharge()">
  26. <image class="small-img" src="/static/image/new_home/yecz.png" mode="widthFix"></image>
  27. <text> {{capital.coin}} </text>
  28. <span>金币充值</span>
  29. </view>
  30. <view class="oval1" @click="toMyBox()">
  31. <image class="small-img" src="/static/image/new_home/tbxg.png" mode="widthFix"></image>
  32. <text> {{capital.box}} </text>
  33. <span>物品盒柜</span>
  34. </view>
  35. <view class="right" @click="wfashuiming()">
  36. <image class="small-img" src="/static/image/new_home/wfsm.png" mode="widthFix"></image>
  37. <span>玩法说明</span>
  38. </view>
  39. </view> -->
  40. <lunbobox></lunbobox>
  41. <!-- <view class="play-explain" @tap="$refs.regulation.open()">
  42. <image class="small-img" src="/static/image/tabbar/wodeyixuanzhong@2x1.png" mode="widthFix"></image>
  43. <text>买家须知</text>
  44. </view> -->
  45. <view class="details_footer_coll" @click="changeStar" v-if="type == 0">
  46. <image
  47. :src="boxDetail.is_star == 1 ? 'https://www.chaomangdao.com/image/home/shoucangyixuanzhong@2x.png' : '/static/image/home/shoucangweixuanzhong@2x.png'"
  48. mode="widthFix"
  49. ></image>
  50. </view>
  51. <view class="loop-container">
  52. <!-- 图片轮播主区域 -->
  53. <view class="loop-image-main">
  54. <prize-flying v-if="box_id" :key="`flying`" :box-id="box_id"></prize-flying>
  55. <!-- 图片轮播 -->
  56. <view class="loop-image-warapper">
  57. <swiper autoplay circular class="swiper">
  58. <swiper-item>
  59. <view :class="['image-box']">
  60. <template v-for="(item, index) in boxDetail.box_banner">
  61. <view :key="index">
  62. <image
  63. :class="[boxDetail.box_banner.length > 1 ? `box-banner-${index}` : 'box-banner']"
  64. :src="item.image"
  65. mode="heightFix"
  66. @click="lookImg(item.image)"
  67. ></image>
  68. <text>{{ item.desc }}</text>
  69. </view>
  70. </template>
  71. </view>
  72. </swiper-item>
  73. </swiper>
  74. <!-- <image src="/static/image/home/erji@2x.png" mode=""></image> -->
  75. </view>
  76. <!-- 底座 -->
  77. <!-- <view class="pedestal">
  78. <image src="/h5/static/image/new_home/dizhuo.png" mode="heightFix"></image>
  79. </view> -->
  80. <!-- 手指 -->
  81. <!-- <view class="finger">
  82. <image src="/h5/static/image/new_home/sz.png" mode="heightFix"></image>
  83. </view> -->
  84. </view>
  85. </view>
  86. </view>
  87. <!-- 下半部分 -->
  88. <view class="bottom">
  89. <view>
  90. <!-- 下方按钮区 -->
  91. <view class="button-container">
  92. <view class="side-btn" @click="haveTry()"><image src="/static/image/new_home/swmhan.png" mode="widthFix"></image></view>
  93. <view class="center-btn" @click="selectNum()">
  94. <image src="/static/image/new_home/khan.png" mode="widthFix"></image>
  95. <!-- <text>立即开箱</text> -->
  96. </view>
  97. <view class="side-btn" @click="$refs.regulation.open()"><image src="/static/image/new_home/gdmhan.png" mode="widthFix"></image></view>
  98. </view>
  99. <!-- <view class="button-container">
  100. <view class="side-btn" @click="haveTry()">
  101. <image src="/static/image/new_home/swmhan.png" mode="widthFix"></image>
  102. </view>
  103. <view class="center-btn" @click="selectNum()">
  104. <image src="/static/image/new_home/khan.png" mode="widthFix"></image>
  105. </view>
  106. </view> -->
  107. <!-- 下方价格 -->
  108. <!-- <view class="price-container">
  109. <text class="price">{{ boxDetail.box_name }}{{ boxDetail.coin_price }}元/个</text>
  110. </view> -->
  111. <!-- <view class="kxbz">盲盒开箱必中以下宝贝之一</view> -->
  112. </view>
  113. </view>
  114. </view>
  115. <uni-popup ref="num-popup" type="bottom" :mask-click="false">
  116. <view class="num-popup">
  117. <view class="popup-close" @click="closeNumPopup"><image src="https://www.chaomangdao.com/image/home/guanbi@2x.png" mode=""></image></view>
  118. <view class="num-button-group">
  119. <view class="num-button" @click="createOder(1)">
  120. <image src="/static/image/new_home/btn-1.png" mode="widthFix"></image>
  121. <text>一发入魂</text>
  122. </view>
  123. </view>
  124. <view class="num-button-group">
  125. <view class="num-button" @click="createOder(5)">
  126. <image src="../../static/image/new_home/btn-3.png" mode="widthFix"></image>
  127. <text>五连绝世</text>
  128. </view>
  129. <view class="num-button" @click="createOder(9)">
  130. <image src="../../static/image/new_home/btn-2.png" mode="widthFix"></image>
  131. <text>九连更稳</text>
  132. </view>
  133. </view>
  134. <view class="order-info">
  135. <view>开盒数量:{{ boxNum }}</view>
  136. <view class="total-price">订单金额:¥{{ totalPrice }}</view>
  137. </view>
  138. <view class="popup-btn"><!-- <button type="primary" @click="$refs['payment'].open(0, boxNum)">创建订单</button> --></view>
  139. </view>
  140. </uni-popup>
  141. <payment ref="payment" :box-id="box_id" :box-num="boxNum" :type="type" @create-success="closeNumPopup" @show-result="showResult"></payment>
  142. <show-result ref="result-popup" :num="boxNum" @accept="toMyBox()" @recycle="recycle" :type="type"></show-result>
  143. <recycle ref="recycle"></recycle>
  144. <!-- <image src="https://www.chaomangdao.com/image/kxbz.png" mode=""></image> -->
  145. <!-- 商品预览start -->
  146. <view class="goods-view">
  147. <view class="rate-view flex">
  148. <!-- <text class="rate-txt">获得概率</text> -->
  149. <view class="rate-list flex">
  150. <view class="rate-item" v-for="(item, index) in rates" :key="item.value">
  151. <text :class="['rate-name', `rate-name-${index}`]">{{ item.name }}</text>
  152. <text class="rate-value">{{ item.value }}%</text>
  153. </view>
  154. </view>
  155. </view>
  156. <view class="goods-list-view flex">
  157. <view class="goods-item" v-for="(item, index) in boxDetail.goodslist" :key="index">
  158. <text class="goods-tag" :class="'goods-tag-' + (item.tag == '传说' ? 0 : item.tag == '史诗' ? 1 : item.tag == '稀有' ? 2 : 3)">{{ item.tag }}</text>
  159. <view class="goods-img-view">
  160. <image :src="item.image.indexOf('http') == -1 ? 'https://www.chaomangdao.com' + item.image : item.image" mode="" @click="lookDetail(item)"></image>
  161. </view>
  162. <view class="goods-name clamp2">{{ item.goods_name }}</view>
  163. <view class="goods-price">¥{{ item.price }}</view>
  164. <!-- <view class="goods-price-view">
  165. <span class="rmb">¥</span>
  166. {{ item.price }}
  167. </view> -->
  168. </view>
  169. </view>
  170. </view>
  171. <!-- 商品预览end -->
  172. <!-- 开盒记录start -->
  173. <!-- <view class="record-view">
  174. <view class="title flex">
  175. <text class="title-left">开盒记录</text>
  176. <view class="title-right flex" @tap="$refs.morerecord.open()">
  177. <text>更多记录</text>
  178. <view class="rule-box">
  179. <image src="../../static/image/publice/jinruer@2x.png" mode="aspectFit"></image>
  180. </view>
  181. </view>
  182. </view>
  183. <view class="record-list-view">
  184. <view class="record-item flex" v-for="(item, index) in record3" :key="index">
  185. <view class="goods-img-view">
  186. <image :src="item.goods_image" mode="aspectFit"></image>
  187. </view>
  188. <view class="record-item-right">
  189. <view class="goods-name-view flex">
  190. <text class="username">{{item.nickname}}</text>
  191. <text class="txt">开出了</text>
  192. <text class="goods-name">{{item.goods_name}}</text>
  193. </view>
  194. <view class="goods-price-view">
  195. 参考价 ¥{{item.goods_rmb_price}}
  196. </view>
  197. <view class="goods-time-view">
  198. 开盒时间:{{item.create_time}}
  199. </view>
  200. </view>
  201. </view>
  202. </view>
  203. </view> -->
  204. <!-- 开盒记录end -->
  205. <!--S 更多记录 -->
  206. <!-- <uni-popup ref="morerecord" :mask-click="true">
  207. <view class="regulation">
  208. <view class="regulation_close" @click="$refs.morerecord.close()">
  209. <image src="/static/image/home/guanbi@2x.png" mode=""></image>
  210. </view>
  211. <view class="regulation_name">开盒记录</view>
  212. <view class="regulation_main">
  213. <scroll-view scroll-y="true" class="scroll-view">
  214. <view class="record-item flex" v-for="(item, index) in boxDetail.record" :key="index">
  215. <view class="goods-img-view">
  216. <image :src="item.goods_image" mode="aspectFit"></image>
  217. </view>
  218. <view class="record-item-right">
  219. <view class="goods-name-view flex">
  220. <text class="username">{{item.nickname}}</text>
  221. <text class="txt">开出了</text>
  222. <text class="goods-name">{{item.goods_name}}</text>
  223. </view>
  224. <view class="goods-price-view">
  225. 参考价 ¥{{item.goods_rmb_price}}
  226. </view>
  227. <view class="goods-time-view">
  228. 开盒时间:{{item.create_time}}
  229. </view>
  230. </view>
  231. </view>
  232. </scroll-view>
  233. </view>
  234. </view>
  235. </uni-popup> -->
  236. <!-- 购买须知start -->
  237. <!-- <view class="buy-rule-view">
  238. <view class="title flex">
  239. <text class="title-left">购买须知</text>
  240. </view>
  241. <view class="box-view" v-html="notice_to_buyers"> -->
  242. <!-- <view class="rule-item">
  243. <view class="rule-title">
  244. 【盲盒规则】
  245. </view>
  246. <view class="rule-html">
  247. 这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则
  248. </view>
  249. </view>
  250. <view class="rule-item">
  251. <view class="rule-title">
  252. 【关于配送】
  253. </view>
  254. <view class="rule-html">
  255. 这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则
  256. </view>
  257. </view>
  258. <view class="rule-item">
  259. <view class="rule-title">
  260. 【售后问题】
  261. </view>
  262. <view class="rule-html">
  263. 这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则这是一段规则
  264. </view>
  265. </view> -->
  266. <!-- </view>
  267. </view> -->
  268. <!-- 购买须知end -->
  269. <!--S 买家须知 -->
  270. <uni-popup ref="regulation" :mask-click="false">
  271. <view class="regulation">
  272. <view class="regulation_close" @click="$refs.regulation.close()"><image src="https://www.chaomangdao.com/image/home/guanbi@2x.png" mode=""></image></view>
  273. <view class="regulation_name">买家须知</view>
  274. <view class="regulation_main">
  275. <scroll-view scroll-y="true" class="scroll-view"><u-parse :content="message"></u-parse></scroll-view>
  276. </view>
  277. </view>
  278. </uni-popup>
  279. <!--E 买家须知 -->
  280. <!-- 更多商品详情 -->
  281. <goods-detail ref="goods-detail"></goods-detail>
  282. </view>
  283. </template>
  284. <script>
  285. import payment from '@/components/payment.vue';
  286. import showResult from '@/components/show-result.vue';
  287. import recycle from '@/components/recycle.vue';
  288. import goodsDetail from '@/components/goods-detail.vue';
  289. import lunbobox from '@/components/lunbobox.vue';
  290. import prizeFlying from '@/components/prize-flying.vue';
  291. const innerAudioContext = uni.createInnerAudioContext();
  292. export default {
  293. components: {
  294. payment,
  295. showResult,
  296. recycle,
  297. goodsDetail,
  298. lunbobox,
  299. prizeFlying
  300. },
  301. data() {
  302. return {
  303. box_id: null, //盲盒ID
  304. message: '', //玩法规则
  305. boxDetail: {}, //盲盒详情
  306. capital: {
  307. box: 0,
  308. coin: 0
  309. },
  310. //金额
  311. price: 0,
  312. //数量
  313. boxNum: 1,
  314. //开盒类型 0:正式开盒 1:试玩
  315. type: 0,
  316. record3: [],
  317. notice_to_buyers: '',
  318. rates: [
  319. {
  320. value: '0.1%',
  321. // name: '传说款',
  322. tag: '传说'
  323. },
  324. {
  325. value: '10.9%',
  326. // name: '史诗款',
  327. tag: '史诗'
  328. },
  329. {
  330. value: '22.5%',
  331. // name: '稀有款',
  332. tag: '稀有'
  333. },
  334. {
  335. value: '76.5%',
  336. // name: '普通款',
  337. tag: '普通'
  338. }
  339. ]
  340. };
  341. },
  342. computed: {
  343. //订单总金额
  344. totalPrice() {
  345. return this.boxNum * this.boxDetail.coin_price;
  346. }
  347. },
  348. created() {
  349. console.log(this.box_id);
  350. },
  351. mounted() {
  352. // let audio = document.getElementById('audio').querySelector('audio');
  353. // audio.play();
  354. },
  355. methods: {
  356. lookImg(url) {
  357. uni.previewImage({
  358. urls: [url],
  359. longPressActions: {
  360. itemList: ['发送给朋友', '保存图片', '收藏'],
  361. success: function(data) {
  362. console.log('选中了第' + (data.tapIndex + 1) + '个按钮,第' + (data.index + 1) + '张图片');
  363. },
  364. fail: function(err) {
  365. console.log(err.errMsg);
  366. }
  367. }
  368. });
  369. },
  370. //查看详情
  371. lookDetail(goods) {
  372. let rate = this.rates.find(item => item.tag == goods.tag);
  373. console.log(this.rates);
  374. this.$refs['goods-detail'].open(goods, rate);
  375. },
  376. changePlay() {
  377. this.isPlay = !this.isPlay;
  378. uni.setStorageSync('isPlay', this.isPlay);
  379. this.isPlay ? innerAudioContext.play() : innerAudioContext.pause();
  380. },
  381. //去充值
  382. recharge() {
  383. uni.navigateTo({ url: '/pages/me/recharge' });
  384. },
  385. //是否点赞
  386. changeStar() {
  387. this.$api.star({ box_id: this.box_id }).then(res => {
  388. if (res.code === 1) {
  389. res.data.is_star == 1 ? (this.boxDetail.is_star = 1) : (this.boxDetail.is_star = 0);
  390. uni.showToast({ title: res.msg });
  391. }
  392. });
  393. },
  394. //跳转说明
  395. wfsm() {
  396. uni.navigateTo({ url: '/pages/index/wfsm' });
  397. },
  398. //跳转盒柜
  399. toMyBox() {
  400. this.$refs['result-popup'].close();
  401. uni.navigateTo({ url: '/pages/me/myBox' });
  402. },
  403. returnTop() {
  404. uni.navigateBack();
  405. },
  406. //获取详情
  407. getDetails() {
  408. this.$api.boxDetail({ box_id: this.box_id }).then(res => {
  409. if (res.code === 1) {
  410. this.boxDetail = res.data;
  411. this.record3 = res.data.record.slice(0, 3);
  412. this.rates[0].value = (res.data.more.tags.legend * 1).toFixed(2);
  413. this.rates[1].value = (res.data.more.tags.supreme * 1).toFixed(2);
  414. this.rates[2].value = (res.data.more.tags.rare * 1).toFixed(2);
  415. this.rates[3].value = (res.data.more.tags.normal * 1).toFixed(2);
  416. console.log(this.boxDetail);
  417. }
  418. });
  419. },
  420. //试玩
  421. haveTry() {
  422. this.type = 1;
  423. this.boxNum = 1;
  424. this.$refs['payment'].open(1, 1);
  425. },
  426. //选择数量
  427. selectNum() {
  428. this.type = 0;
  429. this.boxNum = 1;
  430. this.$refs['num-popup'].open();
  431. },
  432. //创建订单
  433. createOder(num) {
  434. this.boxNum = num;
  435. this.$refs['payment'].open(0, this.boxNum);
  436. },
  437. //创建订单成功或者试玩返回结果
  438. closeNumPopup() {
  439. //关闭数量弹窗
  440. this.$refs['num-popup'].close();
  441. },
  442. //展示结果
  443. showResult(result) {
  444. //试玩
  445. if (this.type == 1) {
  446. this.$refs['result-popup'].open({ prizeInfo: result.goodsInfo });
  447. return;
  448. }
  449. this.$refs['result-popup'].open(result);
  450. },
  451. //回收
  452. recycle(prizedata) {
  453. this.$refs['result-popup'].close();
  454. this.$refs['recycle'].recycle(prizedata.prizeInfo);
  455. },
  456. //玩法规则
  457. getMessage() {
  458. this.$api.agreement({ name: 'notice_to_buyers' }).then(res => {
  459. if (res.code === 1) {
  460. this.message = res.data.content;
  461. }
  462. });
  463. }
  464. },
  465. onUnload() {
  466. innerAudioContext.pause();
  467. },
  468. onLoad({ id }) {
  469. console.log(id, '123456');
  470. this.box_id = parseInt(id);
  471. this.getDetails();
  472. this.getMessage();
  473. },
  474. onShow() {
  475. this.isPlay = uni.getStorageSync('isPlay');
  476. this.isPlay ? innerAudioContext.play() : innerAudioContext.pause();
  477. },
  478. //刷新金币和盒子数量
  479. onShow() {
  480. this.$api.getUserCapital().then(({ code, data }) => {
  481. if (code == 1) {
  482. this.capital = data;
  483. }
  484. });
  485. let is_notice = uni.getStorageSync('is_notice');
  486. uni.removeStorageSync('is_notice');
  487. if (is_notice == 1) {
  488. setTimeout(() => {
  489. uni.showModal({
  490. title: '提示',
  491. content: '恭喜,获得10金币',
  492. success: function(res) {
  493. if (res.confirm) {
  494. console.log('用户点击确定');
  495. } else if (res.cancel) {
  496. console.log('用户点击取消');
  497. }
  498. }
  499. });
  500. }, 1000);
  501. }
  502. }
  503. };
  504. </script>
  505. <style lang="scss">
  506. .bottom-top {
  507. // height: 50rpx;
  508. height: 140rpx;
  509. margin: 20rpx 0;
  510. }
  511. .vheight {
  512. height: var(--status-bar-height);
  513. width: 100%;
  514. }
  515. .bottom-top .bottom-top-left {
  516. width: 25%;
  517. float: left;
  518. margin-left: 5rpx;
  519. }
  520. .bottom-top .bottom-top-center {
  521. width: 26%;
  522. display: block;
  523. float: left;
  524. uni-image {
  525. width: 50rpx;
  526. height: 50rpx;
  527. margin: 0 auto;
  528. float: right;
  529. }
  530. }
  531. .bottom-top .bottom-top-right {
  532. float: right;
  533. margin-right: 5rpx;
  534. }
  535. .kxbz {
  536. display: block;
  537. font-size: 35rpx;
  538. text-align: center;
  539. margin: 5rpx 0;
  540. }
  541. .details_footer_coll {
  542. position: absolute;
  543. box-shadow: 0px 4rpx 6rpx 2rpx #5ca6c8;
  544. background-color: #fff;
  545. top: 8vh;
  546. right: 0;
  547. display: flex;
  548. z-index: 99;
  549. align-items: center;
  550. border-radius: 100rpx;
  551. padding: 8rpx 20rpx;
  552. border-top-right-radius: 0;
  553. border-bottom-right-radius: 0;
  554. uni-text {
  555. color: #5348c9 !important;
  556. margin-left: 10rpx;
  557. }
  558. uni-image {
  559. width: 40rpx;
  560. }
  561. }
  562. uni-page-body {
  563. height: 100%;
  564. }
  565. .play-explain {
  566. position: absolute;
  567. box-shadow: 0px 4rpx 6rpx 2rpx #5ca6c8;
  568. background-color: #fff;
  569. top: 62vh;
  570. right: 0;
  571. display: flex;
  572. z-index: 99;
  573. align-items: center;
  574. border-radius: 100rpx;
  575. padding: 8rpx 20rpx;
  576. border-top-right-radius: 0;
  577. border-bottom-right-radius: 0;
  578. uni-text {
  579. color: #5348c9 !important;
  580. margin-left: 10rpx;
  581. }
  582. uni-image {
  583. width: 40rpx;
  584. }
  585. }
  586. uni-page-body {
  587. height: 100%;
  588. }
  589. .bjt {
  590. background: url(https://www.chaomangdao.com/image/bj.jpg);
  591. background-size: 100% 100%;
  592. }
  593. .index-main {
  594. height: 100%;
  595. background-repeat: no-repeat;
  596. background-size: 100%;
  597. flex-direction: column;
  598. .light {
  599. position: absolute;
  600. top: 0;
  601. }
  602. > view {
  603. display: flex;
  604. flex-direction: column;
  605. }
  606. .top {
  607. flex: 0.6;
  608. .title {
  609. display: flex;
  610. margin-top: 30rpx;
  611. height: 130rpx;
  612. z-index: 19;
  613. padding: 0 30rpx;
  614. > view {
  615. align-items: center;
  616. font-size: 28rpx;
  617. image {
  618. margin-right: 10rpx;
  619. }
  620. }
  621. .oval1,
  622. .oval {
  623. position: relative;
  624. width: 100rpx;
  625. text-align: center;
  626. margin: 0 auto;
  627. }
  628. .oval span,
  629. .oval1 span {
  630. display: block;
  631. position: absolute;
  632. bottom: 0rpx;
  633. font-size: 26rpx;
  634. }
  635. index-xg.png .oval1 text {
  636. color: #4e2ea9 !important;
  637. }
  638. .oval text,
  639. .oval1 text {
  640. color: #fff !important;
  641. border-radius: 100rpx;
  642. width: 80rpx;
  643. background: #cf0000;
  644. position: absolute;
  645. top: 0px;
  646. right: -50rpx;
  647. }
  648. .right {
  649. position: relative;
  650. width: 100rpx;
  651. text-align: center;
  652. margin: 0 auto;
  653. span {
  654. display: block;
  655. position: absolute;
  656. bottom: 0rpx;
  657. font-size: 26rpx;
  658. }
  659. }
  660. }
  661. .loop-container {
  662. background: url(https://www.chaomangdao.com/image/hzbj.gif);
  663. .loop-image-main {
  664. margin-top: 20rpx;
  665. margin-bottom: 20rpx;
  666. position: relative;
  667. height: 580rpx;
  668. .loop-image-warapper {
  669. z-index: 20;
  670. position: absolute;
  671. height: 65%;
  672. margin-top: 100rpx;
  673. width: 100%;
  674. .image-box {
  675. display: flex;
  676. justify-content: center;
  677. height: 100%;
  678. .box-banner {
  679. height: 80%;
  680. }
  681. .box-banner-0 {
  682. width: 118px;
  683. height: 80%;
  684. left: 50%;
  685. transform: translateX(-50%);
  686. position: absolute;
  687. bottom: 0;
  688. }
  689. .box-banner-1 {
  690. left: 50%;
  691. transform: translateX(-50%);
  692. position: absolute;
  693. top: 0;
  694. height: 50%;
  695. }
  696. }
  697. }
  698. .pedestal {
  699. position: absolute;
  700. height: 400rpx;
  701. width: 100%;
  702. bottom: 0;
  703. uni-image {
  704. margin: 0 auto;
  705. }
  706. }
  707. .finger {
  708. position: absolute;
  709. z-index: 21;
  710. height: 140rpx;
  711. right: 180rpx;
  712. bottom: 50rpx;
  713. }
  714. .prize {
  715. position: absolute;
  716. height: 120rpx;
  717. right: 10rpx;
  718. bottom: 50rpx;
  719. z-index: 22;
  720. }
  721. }
  722. .loop-label-warapper {
  723. height: 180rpx;
  724. .label-box {
  725. height: 75%;
  726. display: flex;
  727. align-items: center;
  728. justify-content: center;
  729. }
  730. .loop-label {
  731. transition: 0.2s;
  732. margin: 0 auto;
  733. width: 60%;
  734. height: 65%;
  735. background-image: linear-gradient(45deg, #89f7fe, #7c66ff);
  736. display: flex;
  737. align-items: center;
  738. justify-content: center;
  739. border-radius: 14rpx;
  740. text {
  741. transition: 0.2s;
  742. color: #ffffff;
  743. font-size: 28rpx;
  744. letter-spacing: 2rpx;
  745. font-weight: 400;
  746. }
  747. }
  748. .label-active {
  749. .loop-label {
  750. width: 90%;
  751. height: 80%;
  752. background-image: linear-gradient(45deg, #84f8ff, #1030ff);
  753. text {
  754. font-size: 42rpx;
  755. font-weight: bold;
  756. }
  757. }
  758. }
  759. }
  760. uni-swiper {
  761. height: 90%;
  762. }
  763. }
  764. }
  765. .bottom {
  766. flex: 0.4;
  767. .button-container {
  768. flex: 1;
  769. display: flex;
  770. padding-bottom: 10rpx;
  771. position: fixed;
  772. bottom: 0px;
  773. width: 100%;
  774. z-index: 99;
  775. background: #fff;
  776. > view {
  777. display: flex;
  778. align-items: center;
  779. justify-content: center;
  780. margin: 0 auto;
  781. }
  782. .center-btn {
  783. flex: 0.87;
  784. uni-image {
  785. width: 75%;
  786. }
  787. uni-text {
  788. position: absolute;
  789. font-size: 40rpx;
  790. line-height: 1.1;
  791. color: #ffffff;
  792. font-weight: bold;
  793. font-style: italic;
  794. letter-spacing: 2px;
  795. }
  796. }
  797. .side-btn {
  798. flex-direction: column;
  799. flex: 0.28;
  800. image {
  801. width: 60%;
  802. }
  803. text {
  804. margin-top: 14rpx;
  805. font-size: 28rpx;
  806. font-weight: bold;
  807. }
  808. }
  809. }
  810. .price-container {
  811. text-align: center;
  812. .price {
  813. font-size: 36rpx;
  814. font-weight: bold;
  815. }
  816. }
  817. .look-rule {
  818. font-size: 30rpx;
  819. padding-left: 14rpx;
  820. color: #575757;
  821. }
  822. .banner {
  823. display: flex;
  824. margin: 20rpx 14rpx;
  825. > view {
  826. display: flex;
  827. font-size: 28rpx;
  828. image {
  829. margin-right: 10rpx;
  830. }
  831. }
  832. .center {
  833. flex: 1;
  834. }
  835. }
  836. }
  837. }
  838. .small-img {
  839. width: 80rpx;
  840. margin: 0 auto;
  841. margin-right: 0px;
  842. }
  843. //选择数量弹窗
  844. .num-popup {
  845. background: #ffffff;
  846. border-radius: 10px 10px 0px 0px;
  847. padding: 50px 25px 90px 25px;
  848. .popup-close {
  849. top: 30rpx;
  850. right: 30rpx;
  851. width: 44rpx;
  852. height: 44rpx;
  853. position: absolute;
  854. }
  855. .num-button-group {
  856. display: flex;
  857. justify-content: center;
  858. gap: 50rpx;
  859. }
  860. .num-button {
  861. position: relative;
  862. width: 300rpx;
  863. text {
  864. position: absolute;
  865. top: 50%;
  866. left: 50%;
  867. transform: translateX(-50%) translateY(-50%);
  868. font-size: 36rpx;
  869. font-weight: bold;
  870. color: #fff;
  871. text-shadow: 1px 1px 1px black;
  872. }
  873. }
  874. .order-info {
  875. display: flex;
  876. > view {
  877. flex: 1;
  878. display: flex;
  879. align-items: center;
  880. }
  881. > view {
  882. font-size: 28rpx;
  883. font-weight: bold;
  884. }
  885. .total-price {
  886. color: red;
  887. }
  888. }
  889. > view {
  890. margin-bottom: 30rpx;
  891. }
  892. }
  893. /deep/ .pay {
  894. padding-bottom: 100px !important;
  895. }
  896. // 动画
  897. @keyframes updown {
  898. 0% {
  899. top: 0px;
  900. }
  901. 50% {
  902. top: 10px;
  903. }
  904. 100% {
  905. top: 0px;
  906. }
  907. }
  908. .bottom-top-center uni-image {
  909. animation: jt 2s infinite;
  910. -webkit-animation: jt 2s infinite;
  911. }
  912. .loop-image-warapper {
  913. animation: updown 2s infinite;
  914. -webkit-animation: updown 2s infinite;
  915. }
  916. @keyframes rotate {
  917. 0% {
  918. transform: rotate(0deg);
  919. }
  920. 50% {
  921. transform: rotate(-10deg);
  922. }
  923. 100% {
  924. transform: rotate(0deg);
  925. }
  926. }
  927. .finger {
  928. animation: rotate 1.8s infinite;
  929. -webkit-animation: rotate 1.8s infinite;
  930. }
  931. .details_title {
  932. width: 100%;
  933. position: sticky;
  934. top: 0;
  935. z-index: 2021;
  936. .details_nav {
  937. width: 100%;
  938. }
  939. .details-title_head {
  940. width: 100%;
  941. height: 88rpx;
  942. padding: 0 30rpx;
  943. background: #ffffff;
  944. .details_title_return {
  945. width: 44rpx;
  946. height: 44rpx;
  947. }
  948. .details_title_name {
  949. width: 100%;
  950. text-align: center;
  951. overflow: hidden;
  952. text-overflow: ellipsis;
  953. white-space: nowrap;
  954. font-size: 36rpx;
  955. font-weight: bold;
  956. }
  957. .details_title_mp3 {
  958. width: 44rpx;
  959. height: 44rpx;
  960. }
  961. }
  962. }
  963. .goods-view {
  964. .title {
  965. padding: 0 30rpx;
  966. margin: 30rpx 0 22rpx;
  967. .title-left {
  968. font-size: 34rpx;
  969. font-family: PingFangSC-Medium, PingFang SC;
  970. font-weight: 500;
  971. color: #171a20;
  972. line-height: 48rpx;
  973. }
  974. .title-right {
  975. font-size: 24rpx;
  976. font-family: PingFangSC-Regular, PingFang SC;
  977. font-weight: 400;
  978. color: #7a808d;
  979. line-height: 34rpx;
  980. .rule-box {
  981. width: 28rpx;
  982. height: 28rpx;
  983. margin-left: 6rpx;
  984. }
  985. }
  986. }
  987. .rate-view {
  988. background: #fff;
  989. padding: 20rpx 0;
  990. .rate-txt {
  991. display: inline-block;
  992. width: 172rpx;
  993. height: 80rpx;
  994. line-height: 80rpx;
  995. text-align: center;
  996. background: #696969;
  997. font-size: 24rpx;
  998. font-family: PingFangSC-Regular, PingFang SC;
  999. font-weight: 400;
  1000. color: #666666;
  1001. border-top-right-radius: 30rpx;
  1002. }
  1003. .rate-list {
  1004. background: #ffff;
  1005. margin: 5rpx 20rpx;
  1006. border-radius: 20rpx;
  1007. padding: 10rpx 0;
  1008. justify-content: space-around;
  1009. flex: 1;
  1010. .rate-item {
  1011. display: flex;
  1012. flex-direction: column;
  1013. align-items: center;
  1014. .rate-value {
  1015. font-size: 24rpx;
  1016. font-family: PingFangSC-Regular, PingFang SC;
  1017. font-weight: 400;
  1018. color: #0c0d10;
  1019. line-height: 34rpx;
  1020. }
  1021. .rate-name {
  1022. font-size: 24rpx;
  1023. font-family: PingFangSC-Medium, PingFang SC;
  1024. font-weight: 1000;
  1025. line-height: 34rpx;
  1026. }
  1027. }
  1028. .rate-value {
  1029. color: #666666 !important;
  1030. display: block;
  1031. margin-top: 10rpx;
  1032. }
  1033. .rate-name-0 {
  1034. background: url(../../static/image/new_home/cs.png);
  1035. background-size: 100% 100%;
  1036. height: 80rpx;
  1037. width: 80rpx;
  1038. }
  1039. .rate-name-1 {
  1040. background: url(../../static/image/new_home/ss.png);
  1041. background-size: 100% 100%;
  1042. height: 80rpx;
  1043. width: 80rpx;
  1044. }
  1045. .rate-name-2 {
  1046. background: url(../../static/image/new_home/xy.png);
  1047. background-size: 100% 100%;
  1048. height: 80rpx;
  1049. width: 80rpx;
  1050. }
  1051. .rate-name-3 {
  1052. background: url(../../static/image/new_home/pt.png);
  1053. background-size: 100% 100%;
  1054. height: 80rpx;
  1055. width: 80rpx;
  1056. }
  1057. }
  1058. }
  1059. .goods-list-view {
  1060. margin-bottom: 134rpx;
  1061. flex-wrap: wrap;
  1062. padding: 0 16rpx;
  1063. margin-top: 14rpx;
  1064. &::after {
  1065. content: '';
  1066. width: 220rpx;
  1067. }
  1068. .goods-item {
  1069. width: 227rpx;
  1070. height: 291rpx;
  1071. // padding: 20rpx;
  1072. background: #ffffff;
  1073. // background: #000;
  1074. border-radius: 16rpx;
  1075. position: relative;
  1076. margin-top: 20rpx;
  1077. display: flex;
  1078. flex-direction: column;
  1079. // justify-content: center;
  1080. align-items: center;
  1081. .goods-price {
  1082. position: absolute;
  1083. right: 0;
  1084. top: 188rpx;
  1085. background-color: #ff7184;
  1086. width: 88rpx;
  1087. height: 30rpx;
  1088. text-align: center;
  1089. font-size: 20rpx;
  1090. line-height: 30rpx;
  1091. border-radius: 15rpx 0 15rpx 0;
  1092. color: #fff;
  1093. }
  1094. .goods-tag {
  1095. position: absolute;
  1096. top: 0;
  1097. left: 0;
  1098. width: 88rpx;
  1099. height: 30rpx;
  1100. // background-color: #ff5423;
  1101. // z-index: 999;
  1102. color: #fff;
  1103. text-align: center;
  1104. font-size: 20rpx;
  1105. line-height: 30rpx;
  1106. border-radius: 15rpx 0 15rpx 0;
  1107. &-0 {
  1108. background-color: #ff5423;
  1109. }
  1110. &-1 {
  1111. background-color: #ffaa40;
  1112. }
  1113. &-2 {
  1114. background-color: #46aaff;
  1115. }
  1116. &-3 {
  1117. background-color: #7162ff;
  1118. }
  1119. }
  1120. .goods-img-view {
  1121. // width: 40%;
  1122. width: 100%;
  1123. height: 218rpx;
  1124. image {
  1125. width: 100%;
  1126. height: 218rpx;
  1127. // margin: auto;
  1128. display: inline-block;
  1129. }
  1130. // float: left;
  1131. // margin-right: 10rpx;
  1132. }
  1133. .goods-price-view {
  1134. width: 260rpx;
  1135. height: 40rpx;
  1136. font-size: 45rpx;
  1137. font-family: PingFangSC-Regular, PingFang SC;
  1138. font-weight: 500;
  1139. color: #ff495d;
  1140. line-height: 40rpx;
  1141. float: left;
  1142. margin: 26rpx 0;
  1143. display: block;
  1144. .rmb {
  1145. font-size: 28rpx;
  1146. }
  1147. }
  1148. .goods-name {
  1149. // width: 58%;
  1150. // font-size: 32rpx;
  1151. // font-family: PingFangSC-Medium, PingFang SC;
  1152. // font-weight: 500;
  1153. // color: #171a20;
  1154. // line-height: 50rpx;
  1155. // overflow: hidden;
  1156. // text-overflow: ellipsis;
  1157. font-size: 20rpx;
  1158. padding: 5rpx 20rpx 0;
  1159. }
  1160. }
  1161. }
  1162. .record-view {
  1163. .title {
  1164. padding: 0 30rpx;
  1165. margin: 30rpx 0 22rpx;
  1166. .title-left {
  1167. font-size: 34rpx;
  1168. font-family: PingFangSC-Medium, PingFang SC;
  1169. font-weight: 500;
  1170. color: #171a20;
  1171. line-height: 48rpx;
  1172. }
  1173. .title-right {
  1174. font-size: 24rpx;
  1175. font-family: PingFangSC-Regular, PingFang SC;
  1176. font-weight: 400;
  1177. color: #7a808d;
  1178. line-height: 34rpx;
  1179. .rule-box {
  1180. width: 24rpx;
  1181. height: 24rpx;
  1182. margin-left: 6rpx;
  1183. }
  1184. }
  1185. }
  1186. .record-list-view {
  1187. .record-item {
  1188. margin: 20rpx auto 0;
  1189. width: 690rpx;
  1190. height: 180rpx;
  1191. background: #ffffff;
  1192. border-radius: 16rpx;
  1193. padding: 12rpx 0 10rpx 18rpx;
  1194. .goods-img-view {
  1195. width: 158rpx;
  1196. height: 158rpx;
  1197. }
  1198. .record-item-right {
  1199. flex: 1;
  1200. margin-left: 22rpx;
  1201. line-height: 42rpx;
  1202. .goods-name-view {
  1203. justify-content: flex-start;
  1204. font-size: 24rpx;
  1205. font-family: PingFangSC-Medium, PingFang SC;
  1206. font-weight: 500;
  1207. color: #171a20;
  1208. .username,
  1209. .goods-name {
  1210. color: #0091ff;
  1211. }
  1212. .goods-name {
  1213. display: inline-block;
  1214. width: 200rpx;
  1215. overflow: hidden;
  1216. text-overflow: ellipsis;
  1217. white-space: nowrap;
  1218. }
  1219. .txt {
  1220. display: inline-block;
  1221. margin: 0 8rpx;
  1222. }
  1223. }
  1224. .goods-price-view {
  1225. font-size: 24rpx;
  1226. font-family: PingFangSC-Regular, PingFang SC;
  1227. font-weight: 400;
  1228. color: #ff495d;
  1229. }
  1230. .goods-time-view {
  1231. font-size: 24rpx;
  1232. font-family: PingFangSC-Regular, PingFang SC;
  1233. font-weight: 400;
  1234. color: #7a808d;
  1235. }
  1236. }
  1237. }
  1238. }
  1239. }
  1240. }
  1241. .record-view {
  1242. .title {
  1243. padding: 0 30rpx;
  1244. margin: 30rpx 0 22rpx;
  1245. .title-left {
  1246. font-size: 34rpx;
  1247. font-family: PingFangSC-Medium, PingFang SC;
  1248. font-weight: 500;
  1249. color: #171a20;
  1250. line-height: 48rpx;
  1251. }
  1252. .title-right {
  1253. font-size: 24rpx;
  1254. font-family: PingFangSC-Regular, PingFang SC;
  1255. font-weight: 400;
  1256. color: #7a808d;
  1257. line-height: 34rpx;
  1258. .rule-box {
  1259. width: 24rpx;
  1260. height: 24rpx;
  1261. margin-left: 6rpx;
  1262. }
  1263. }
  1264. }
  1265. .record-list-view {
  1266. .record-item {
  1267. margin: 20rpx auto 0;
  1268. width: 690rpx;
  1269. height: 180rpx;
  1270. background: #ffffff;
  1271. border-radius: 16rpx;
  1272. padding: 12rpx 0 10rpx 18rpx;
  1273. .goods-img-view {
  1274. width: 158rpx;
  1275. height: 158rpx;
  1276. }
  1277. .record-item-right {
  1278. flex: 1;
  1279. margin-left: 22rpx;
  1280. line-height: 42rpx;
  1281. .goods-name-view {
  1282. justify-content: flex-start;
  1283. font-size: 24rpx;
  1284. font-family: PingFangSC-Medium, PingFang SC;
  1285. font-weight: 500;
  1286. color: #171a20;
  1287. .username,
  1288. .goods-name {
  1289. color: #0091ff;
  1290. }
  1291. .goods-name {
  1292. display: inline-block;
  1293. width: 200rpx;
  1294. overflow: hidden;
  1295. text-overflow: ellipsis;
  1296. white-space: nowrap;
  1297. }
  1298. .txt {
  1299. display: inline-block;
  1300. margin: 0 8rpx;
  1301. }
  1302. }
  1303. .goods-price-view {
  1304. font-size: 24rpx;
  1305. font-family: PingFangSC-Regular, PingFang SC;
  1306. font-weight: 400;
  1307. color: #ff495d;
  1308. }
  1309. .goods-time-view {
  1310. font-size: 24rpx;
  1311. font-family: PingFangSC-Regular, PingFang SC;
  1312. font-weight: 400;
  1313. color: #7a808d;
  1314. }
  1315. }
  1316. }
  1317. }
  1318. }
  1319. .regulation {
  1320. width: 650rpx;
  1321. height: 900rpx;
  1322. padding: 0 0 0 30rpx;
  1323. background: #ffffff;
  1324. border-radius: 20rpx;
  1325. position: relative;
  1326. .regulation_close {
  1327. position: absolute;
  1328. width: 44rpx;
  1329. height: 44rpx;
  1330. top: 30rpx;
  1331. right: 30rpx;
  1332. }
  1333. .regulation_name {
  1334. padding: 40rpx 0;
  1335. text-align: center;
  1336. font-size: 30rpx;
  1337. font-weight: bold;
  1338. }
  1339. .scroll-view {
  1340. height: 735rpx;
  1341. }
  1342. }
  1343. .regulation {
  1344. .record-item {
  1345. margin: 20rpx auto 0;
  1346. width: 616rpx;
  1347. height: 180rpx;
  1348. background: #ffffff;
  1349. border-radius: 16rpx;
  1350. .goods-img-view {
  1351. width: 158rpx;
  1352. height: 158rpx;
  1353. }
  1354. .record-item-right {
  1355. flex: 1;
  1356. margin-left: 22rpx;
  1357. line-height: 42rpx;
  1358. .goods-name-view {
  1359. justify-content: flex-start;
  1360. font-size: 24rpx;
  1361. font-family: PingFangSC-Medium, PingFang SC;
  1362. font-weight: 500;
  1363. color: #171a20;
  1364. .username,
  1365. .goods-name {
  1366. color: #0091ff;
  1367. }
  1368. .goods-name {
  1369. display: inline-block;
  1370. width: 150rpx;
  1371. overflow: hidden;
  1372. text-overflow: ellipsis;
  1373. white-space: nowrap;
  1374. }
  1375. .txt {
  1376. display: inline-block;
  1377. margin: 0 8rpx;
  1378. }
  1379. }
  1380. .goods-price-view {
  1381. font-size: 24rpx;
  1382. font-family: PingFangSC-Regular, PingFang SC;
  1383. font-weight: 400;
  1384. color: #ff495d;
  1385. }
  1386. .goods-time-view {
  1387. font-size: 24rpx;
  1388. font-family: PingFangSC-Regular, PingFang SC;
  1389. font-weight: 400;
  1390. color: #7a808d;
  1391. }
  1392. }
  1393. }
  1394. }
  1395. .buy-rule-view {
  1396. padding-bottom: 46rpx;
  1397. .title {
  1398. padding: 0 30rpx;
  1399. margin: 30rpx 0 22rpx;
  1400. .title-left {
  1401. font-size: 34rpx;
  1402. font-family: PingFangSC-Medium, PingFang SC;
  1403. font-weight: 500;
  1404. color: #171a20;
  1405. line-height: 48rpx;
  1406. }
  1407. }
  1408. .box-view {
  1409. width: 690rpx;
  1410. margin: 0 auto;
  1411. background: #ffffff;
  1412. border-radius: 16rpx;
  1413. padding: 28rpx 0;
  1414. .rule-item {
  1415. .rule-title {
  1416. padding: 0 10rpx;
  1417. font-size: 28rpx;
  1418. font-family: PingFangSC-Medium, PingFang SC;
  1419. font-weight: 500;
  1420. color: #2e333f;
  1421. }
  1422. .rule-html {
  1423. padding: 0 26rpx;
  1424. font-size: 24rpx;
  1425. font-family: PingFangSC-Regular, PingFang SC;
  1426. font-weight: 400;
  1427. color: #7a808d;
  1428. line-height: 40rpx;
  1429. margin: 12rpx 0 24rpx;
  1430. }
  1431. }
  1432. }
  1433. }
  1434. .center-btn uni-text {
  1435. -webkit-animation-name: living; /*关键帧名称*/
  1436. -webkit-animation-timing-function: ease-in-out; /*动画的速度曲线*/
  1437. -webkit-animation-iteration-count: infinite; /*动画播放的次数*/
  1438. -webkit-animation-duration: 5s; /*动画所花费的时间*/
  1439. }
  1440. //放大动画
  1441. @keyframes living {
  1442. 0% {
  1443. transform: scale(0.8);
  1444. opacity: 0.8;
  1445. }
  1446. 50% {
  1447. transform: scale(1);
  1448. opacity: 1; /*圆形放大的同时,透明度逐渐减小为0*/
  1449. }
  1450. 100% {
  1451. transform: scale(0.8);
  1452. opacity: 0.8;
  1453. }
  1454. }
  1455. // 动画
  1456. @keyframes updown {
  1457. 0% {
  1458. top: 0px;
  1459. }
  1460. 50% {
  1461. top: 10px;
  1462. }
  1463. 100% {
  1464. top: 0px;
  1465. }
  1466. }
  1467. // 动画
  1468. @keyframes jt {
  1469. 0% {
  1470. top: 0px;
  1471. }
  1472. 50% {
  1473. top: 5px;
  1474. }
  1475. 100% {
  1476. top: 0px;
  1477. }
  1478. }
  1479. </style>