ITPub博客

首页 > IT职业 > IT图书 > iPhone Checkbox Effect

iPhone Checkbox Effect

原创 IT图书 作者:chunzhisu 时间:2014-07-10 17:24:17 0 删除 编辑

点击(此处)折叠或打开

  1. iPhone Checkbox Effect是一个很经典的CSS3的案例了,这样的效果到处可见,本代码就是一个这样的安全,希望通过这个安全让更多的人了解CSS3的使用。
  2. <!DOCTYPE HTML>
  3. <html lang=\"en-US\">
  4. <head>
  5. <meta charset=\"UTF-8\">
  6. <title>iPhone Checkbox Effect</title>
  7. <style type=\"text/css\">
  8. #checked {
  9. font-family: \"Lucida Grande\", Verdana, Arial, sans-serif, Helvetica;
  10. width: 300px;
  11. position: relative;
  12. margin: 20px auto;
  13. }
  14. .labelBox {
  15. margin-bottom: 20px;
  16. background: -webkit-linear-gradient(19% 75% 90deg,#3095C7, #14539C);
  17. background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#14539C), to(#3095C7));
  18. background: -moz-linear-gradient(19% 75% 90deg,#3095C7, #14539C);
  19. background: -ms-linear-gradient(19% 75% 90deg,#3095C7, #14539C);
  20. background: -o-linear-gradient(19% 75% 90deg,#3095C7, #14539C);
  21. background: linear-gradient(19% 75% 90deg,#3095C7, #14539C);
  22. border-radius: 4px;
  23. border: 1px solid #555555;
  24. width: 80px;
  25. position: relative;
  26. height: 32px;
  27. }


  28. .labelBox::before,
  29. .labelBox::after {
  30. content:\"ON\";
  31. padding-left: 9px;
  32. line-height: 32px;
  33. color: #fff;
  34. font-size: 14px;
  35. text-shadow: #093b5c 0 -1px 1px;
  36. }
  37. .labelBox::after {
  38. content:\"OFF\";
  39. padding-left: 12px;
  40. }
  41. .check {
  42. display: block;
  43. width: 40px;
  44. height: 30px;
  45. border-radius: 3px;
  46. background: #fff -webkit-gradient(linear, 0% 0%, 0% 100%, from(#A1A1A1), to(#FFFFFF));
  47. background: -webkit-linear-gradient(19% 75% 90deg,#FFFFFF, #A1A1A1);
  48. background: -moz-linear-gradient(19% 75% 90deg,#FFFFFF, #A1A1A1);
  49. background: -ms-linear-gradient(19% 75% 90deg,#FFFFFF, #A1A1A1);
  50. background: -o-linear-gradient(19% 75% 90deg,#FFFFFF, #A1A1A1);
  51. background: -moz-linear-gradient(19% 75% 90deg,#FFFFFF, #A1A1A1);
  52. border: 1px solid #e5e5e5;
  53. position: absolute;
  54. top: 0px;
  55. left: 0px;
  56. }
  57. input[type=checkbox] {
  58. border: 0 none !important;
  59. clip: rect(1px,1px,1px,1px);
  60. height: 1px !important;
  61. overflow: hidden !important;
  62. position: absolute !important;
  63. width: 1px !important;
  64. }


  65. @-webkit-keyframes labelON {
  66. 0% {
  67. top: 0px;
  68.     left: 0px;
  69. }

  70. 100% {
  71. top: 0px;
  72.     left: 38px;
  73. }
  74. }


  75. @-moz-keyframes labelON {
  76. 0% {
  77. top: 0px;
  78.     left: 0px;
  79. }
  80. 100% {
  81. top: 0px;
  82.     left: 38px;
  83. }
  84. }
  85. @-o-keyframes labelON {
  86. 0% {
  87. top: 0px;
  88.     left: 0px;
  89. }

  90. 100% {
  91. top: 0px;
  92.     left: 38px;
  93. }
  94. }


  95. @-ms-keyframes labelON {
  96. 0% {
  97. top: 0px;
  98.     left: 0px;
  99. }
  100. 100% {
  101. top: 0px;
  102.     left: 38px;
  103. }
  104. }


  105. @keyframes labelON {
  106. 0% {
  107. top: 0px;
  108.     left: 0px;
  109. }
  110. 100% {
  111. top: 0px;
  112.     left: 38px;
  113. }
  114. }
  115. @-webkit-keyframes labelOFF {
  116. 0% {
  117. top: 0px;
  118.     left: 38px;
  119. }

  120. 100% {
  121. top: 0px;
  122.     left: 0px;
  123. }
  124. }
  125. @-moz-keyframes labelOFF {
  126. 0% {
  127. top: 0px;
  128.     left: 38px;
  129. }

  130. 100% {
  131. top: 0px;
  132.     left: 0px;
  133. }
  134. }
  135. @-o-keyframes labelOFF {
  136. 0% {
  137. top: 0px;
  138.     left: 38px;
  139. }

  140. 100% {
  141. top: 0px;
  142.     left: 0px;
  143. }
  144. }
  145. @-ms-keyframes labelOFF {
  146. 0% {
  147. top: 0px;
  148.     left: 38px;
  149. }

  150. 100% {
  151. top: 0px;
  152.     left: 0px;
  153. }
  154. }
  155. @keyframes labelOFF {
  156. 0% {
  157. top: 0px;
  158.        left: 38px;
  159. }

  160. 100% {
  161. top: 0px;
  162.        left: 0px;
  163. }
  164. }
  165. input[type=checkbox]:checked + label.check {
  166. top: 0px;
  167. left: 38px;
  168. -webkit-animation: labelON 0.2s ease-in 0s 1;
  169. -moz-animation: labelON 0.2s ease-in 0s 1;
  170. -o-animation: labelON 0.2s ease-in 0s 1;
  171. -ms-animation: labelON 0.2s ease-in 0s 1;
  172. animation: labelON 0.2s ease-in 0s 1;
  173.   box-shadow: #244766 -1px 0px 3px;
  174. }


  175. input[type=checkbox] + label.check {
  176. top: 0px;
  177. left: 0px;
  178. -webkit-animation: labelOFF 0.2s ease-in 0s 1;
  179. -moz-animation: labelOFF 0.2s ease-in 0s 1;
  180. -o-animation: labelOFF 0.2s ease-in 0s 1;
  181. -ms-animation: labelOFF 0.2s ease-in 0s 1;
  182. animation: labelOFF 0.2s ease-in 0s 1;
  183. box-shadow: #244766 1px 0px 3px;
  184. }
  185. label.info {
  186. position: absolute;
  187. color: #000;
  188. top:0px;
  189. left: 100px;
  190. line-height: 32px;
  191. width: 200px;
  192. }
  193. </style>
  194. </head>
  195. <body>
  196. <div class=\"page\">
  197. <section class=\"demo\">
  198. <div id=\"checked\">
  199. <div class=\"labelBox\">
  200. <input type=\"checkbox\" value=\"wi-fi\" id=\"wifi\" name=\"wifi\" checked=\"checked\" />
  201. <label for=\"wifi\" class=\"check\"></label>
  202. <label for=\"wifi\" class=\"info\">Wi-Fi</label>
  203. </div>
  204. <div class=\"labelBox\">
  205. <input type=\"checkbox\" value=\"warpDrive\" name=\"warpDrive\" id=\"warpDrive\" />
  206. <label for=\"warpDrive\" class=\"check\"></label>
  207. <label for=\"warpDrive\" class=\"info\">Warp Drive</label>
  208. </div>
  209. </div>
  210. </section>
  211. </div>
  212. </body>
  213. </html>

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29737856/viewspace-1215977/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-07-04

  • 博文量
    95
  • 访问量
    122213