share3.html 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6. <title>FreeShort</title>
  7. <link href="./css/bootstrap.min.css" rel="stylesheet" crossorigin="anonymous" />
  8. <style>
  9. * {
  10. margin: 0;
  11. padding: 0;
  12. }
  13. #btn {
  14. width: 253px;
  15. height: 51px;
  16. background-image: url(./assets/btn2.png);
  17. background-position: center;
  18. background-size: cover;
  19. position: absolute;
  20. bottom: calc(env(safe-area-inset-bottom) + 30px);
  21. bottom: calc(constant(safe-area-inset-bottom) + 30px);
  22. left: 50%;
  23. transform: translateX(-50%);
  24. z-index: 20;
  25. border-radius: 50px;
  26. }
  27. .video {
  28. position: absolute;
  29. top: 50%;
  30. left: 50%;
  31. transform: translate(-50%, -50%);
  32. border: 2px solid #fff;
  33. }
  34. .video::after {
  35. content: '';
  36. position: absolute;
  37. top: 0;
  38. left: 0;
  39. right: 0;
  40. bottom: 0;
  41. z-index: 1;
  42. background-color: rgba(0, 0, 0, 0.3);
  43. }
  44. #title {
  45. position: absolute;
  46. top: 10px;
  47. font-size: 12px;
  48. color: #ffffff;
  49. line-height: 24px;
  50. text-align: center;
  51. width: 100%;
  52. z-index: 20;
  53. }
  54. #video-cover {
  55. width: 70vw;
  56. display: block;
  57. }
  58. .label-img {
  59. width: 24px;
  60. height: 24px;
  61. }
  62. :root {
  63. --bs-tertiary-bg: #f5f7fa;
  64. --bs-form-control-bg: #f5f7fa;
  65. --bs-border-color: #f5f7fa;
  66. --bs-modal-margin: 28px;
  67. }
  68. .input-group-text {
  69. border-radius: 50px;
  70. }
  71. .form-control {
  72. border-radius: 50px;
  73. }
  74. .modal-dialog {
  75. margin: 28px;
  76. }
  77. .modal-title {
  78. font-size: 20px;
  79. font-family: AlimamaShuHeiTi;
  80. color: #000000;
  81. line-height: 20px;
  82. text-align: center;
  83. margin: 0 auto 22px;
  84. }
  85. .modal-body {
  86. padding: 18px 20px 26px;
  87. }
  88. .submit-btn {
  89. background: linear-gradient(180deg, #ff7340 0%, #ff3e3e 100%);
  90. height: 42px;
  91. font-size: 16px;
  92. font-family: AlimamaShuHeiTi;
  93. color: #ffffff;
  94. line-height: 24px;
  95. text-shadow: 0px 2px 0px #e71d0d;
  96. border-radius: 42px;
  97. margin-top: 10px;
  98. }
  99. .form-check-input:checked {
  100. background-color: #ff7340;
  101. border-color: #ff7340;
  102. }
  103. .form-check-label {
  104. font-size: 12px;
  105. font-weight: 400;
  106. color: #61657a;
  107. line-height: 24px;
  108. }
  109. </style>
  110. </head>
  111. <body>
  112. <div id="app">
  113. <img src="./assets/share.png" style="width: 100%; height: auto;" data-bs-toggle="modal"
  114. data-bs-target="#exampleModal" />
  115. <div class="modal fade" id="exampleModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
  116. <div class="modal-dialog modal-dialog-centered">
  117. <div class="modal-content">
  118. <div class="modal-body">
  119. <div class="modal-title">Download</div>
  120. <form class="row g-3 needs-validation" novalidate>
  121. <div class="col-md-4">
  122. <div class="input-group has-validation">
  123. <span class="input-group-text" id="inputEmail">
  124. <img class="label-img" src="./assets/email.png" alt="" />
  125. </span>
  126. <input type="email" class="form-control" id="email" aria-describedby="inputEmail"
  127. required placeholder="Your email" />
  128. <div class="invalid-feedback">Invalid email</div>
  129. </div>
  130. </div>
  131. <div class="col-12 d-grid gap-2">
  132. <button class="btn submit-btn" type="submit">Download</button>
  133. </div>
  134. </form>
  135. </div>
  136. </div>
  137. </div>
  138. </div>
  139. </div>
  140. <script src="./js/jquery-3.7.1.min.js" crossorigin="anonymous"></script>
  141. <script src="./js/bootstrap.min.js" crossorigin="anonymous"></script>
  142. <script src="./js/form.js" crossorigin="anonymous"></script>
  143. <script>
  144. function GetQueryString(name) {
  145. var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i')
  146. var r = window.location.search.substr(1).match(reg) //获取url中"?"符后的字符串并正则匹配
  147. var context = ''
  148. if (r != null) context = decodeURIComponent(r[2])
  149. reg = null
  150. r = null
  151. return context == null || context == '' || context == 'undefined' ? '' : context
  152. }
  153. </script>
  154. </body>
  155. </html>