details.vue 34 KB

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