CSS3如何实现简易版的刮刮乐效果

效果图代码XML HTML Code复制内容到剪贴板

效果图

代码

XML/HTML Code复制内容到剪贴板
  1. <!DOCTYPE html>  
  2. <html lang="en">  
  3.   
  4. <head>  
  5.     <meta charset="UTF-8">  
  6.     <title>CSS3模拟刮刮乐</title>  
  7.     <style type="text/css" media="screen">  
  8.     .card {   
  9.         border: 1px solid #000;   
  10.         -webkit-box-shadow: 1px 1px 2px rgba(77, 73, 73, 1.0), -1px -1px 2px rgba(77, 73, 73, 1.0), 0 0 1px rgba(77, 73, 73, 1.0) inset;   
  11.                 box-shadow: 1px 1px 2px rgba(77, 73, 73, 1.0), -1px -1px 2px rgba(77, 73, 73, 1.0), 0 0 1px rgba(77, 73, 73, 1.0) inset;   
  12.         border-radius: 3%;   
  13.         width: 20rem;   
  14.         height: 30rem;   
  15.         background: -webkit-gradient(linear, left top, left bottom, from(#EEE5E5), to(#FCE4E4));   
  16.         background: -webkit-linear-gradient(top, #EEE5E5, #FCE4E4);   
  17.         background: linear-gradient(180deg, #EEE5E5, #FCE4E4);   
  18.     }   
  19.   
  20.     .title,   
  21.     .ad-desrc {   
  22.         margin: 0;   
  23.         text-align: center;   
  24.         padding: 30px 0;   
  25.     }   
  26.     .ad-desrc{   
  27.         color: #bbb;   
  28.         font-size: 12px;   
  29.     }   
  30.   
  31.     .card-head,   
  32.     .card-footer {   
  33.         height: 25%;   
  34.         width: 100%;   
  35.     }   
  36.   
  37.     .card-body {   
  38.         height: 50%;   
  39.         width: 100%;   
  40.     }   
  41.   
  42.     .award-desrc {   
  43.         padding: 0 30px;   
  44.         margin: 5px auto;   
  45.         text-align: left;   
  46.     }   
  47.   
  48.     .award-scan {   
  49.         text-align: center;   
  50.         font-size: 20px;   
  51.         font-weight: 700;   
  52.         width: 80%;   
  53.         margin: 15px auto;   
  54.         padding: 30px 10px;   
  55.         /* 高斯模糊主要由这两句操控,文字透明及阴影半径 */   
  56.         color: transparent;   
  57.         -webkit-box-shadow: 0 0 5px rgba(178, 178, 178, 1);   
  58.                 box-shadow: 0 0 5px rgba(178, 178, 178, 1);   
  59.     }   
  60.     </style>  
  61. </head>  
  62.   
  63. <body>  
  64.     <p>非常简易版的刮刮乐模拟,搭配JS更加【禁用和启用选中功能】</p>  
  65.     <div class="card">  
  66.         <div class="card-head">  
  67.             <h1 class="title">CRPER刮刮乐</h1>  
  68.         </div>  
  69.         <div class="card-body">  
  70.             <h1 class="award-desrc">刮奖区域:</h1>  
  71.             <p class="award-scan">恭喜您中了逗逼大奖!!</p>  
  72.         </div>  
  73.         <div class="card-footer">  
  74.             <h4 class="ad-desrc">走过路过不要错过啊!!!</h4>  
  75.         </div>  
  76.     </div>  
  77. </body>  
  78.   
  79. </html>  

总结

这个效果实现起来相当简单,稍微需要注意是卡牌的装饰用了渐变;

配合JS,可以控制在某种条件下才能选中内容(查看内容)

pc 可以控制mousedown来禁止,也可以用CSS的一个规则user-select【考虑兼容需要考虑前缀】

移动端可以控制touchstart~touchend来实现达到条件选中;

最后说一句,做着玩的。选中看到内容,用户体验不是很好,不能控制过渡效果;此教程只是CSS3一些特性的小技巧。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持好代码网。

标签: CSS3 刮刮乐