1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0,user-scalable=no">
  6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7. <title>timline html5 css timeline horizontal</title>
  8. <meta name="Description" content="geovindu">
  9. <meta name="Keywords" content="geovindu">
  10. <meta name="author" content="geovindu">
  11. <link href='https://fonts.googleapis.com/css?family=Titillium+Web:400,200,300,600,700' rel='stylesheet' type='text/css'>
  12. <link href="font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet">
  13. <link href="Bootstrap/4.2.1/css/bootstrap.min.css" rel="stylesheet">
  14. <style type="text/css">
  15. .timeline {
  16. list-style-type: none;
  17. display: flex;
  18. align-items: center;
  19. justify-content: center;
  20. }
  21.  
  22. .li {
  23. transition: all 200ms ease-in;
  24. }
  25.  
  26. .timestamp {
  27. margin-bottom: 20px;
  28. padding: 0px 40px;
  29. display: flex;
  30. flex-direction: column;
  31. align-items: center;
  32. font-weight: 100;
  33. }
  34.  
  35. .status {
  36. padding: 0px 40px;
  37. display: flex;
  38. justify-content: center;
  39. border-top: 2px solid #D6DCE0;
  40. position: relative;
  41. transition: all 200ms ease-in;
  42. }
  43. .status h4 {
  44. font-weight: 600;
  45. }
  46. .status:before {
  47. content: "";
  48. width: 25px;
  49. height: 25px;
  50. background-color: white;
  51. border-radius: 25px;
  52. border: 1px solid #ddd;
  53. position: absolute;
  54. top: -15px;
  55. left: 42%;
  56. transition: all 200ms ease-in;
  57. }
  58.  
  59. .li.complete .status {
  60. border-top: 2px solid #66DC71;
  61. }
  62. .li.complete .status:before {
  63. background-color: #66DC71;
  64. border: none;
  65. transition: all 200ms ease-in;
  66. }
  67. .li.complete .status h4 {
  68. color: #66DC71;
  69. }
  70.  
  71. @media (min-device-width: 320px) and (max-device-width: 700px) {
  72. .timeline {
  73. list-style-type: none;
  74. display: block;
  75. }
  76.  
  77. .li {
  78. transition: all 200ms ease-in;
  79. display: flex;
  80. width: inherit;
  81. }
  82.  
  83. .timestamp {
  84. width: 100px;
  85. }
  86.  
  87. .status:before {
  88. left: -8%;
  89. top: 30%;
  90. transition: all 200ms ease-in;
  91. }
  92. }
  93. html, body {
  94. width: 100%;
  95. height: 100%;
  96. display: flex;
  97. justify-content: center;
  98. font-family: "Titillium Web", sans serif;
  99. color: #758D96;
  100. }
  101.  
  102. button {
  103. position: absolute;
  104. width: 100px;
  105. min-width: 100px;
  106. padding: 20px;
  107. margin: 20px;
  108. font-family: "Titillium Web", sans serif;
  109. border: none;
  110. color: white;
  111. font-size: 16px;
  112. text-align: center;
  113. }
  114. .geovindu{
  115. width: 100%;
  116. position:relative;
  117. }
  118.  
  119. #toggleButton {
  120. position: absolute;
  121. left: 50px;
  122. top: 20px;
  123. background-color: #75C7F6;
  124. }
  125. </style>
  126. <script src='js/jquery-3.6.0.min.js'></script>
  127. <script type="text/javascript">
  128. $(document).ready(function () {
  129. var completes = document.querySelectorAll(".complete");
  130. var toggleButton = document.getElementById("toggleButton");
  131.  
  132.  
  133. function toggleComplete(){
  134. var lastComplete = completes[completes.length - 1];
  135. lastComplete.classList.toggle('complete');
  136. }
  137.  
  138. toggleButton.onclick = toggleComplete;
  139. });
  140. </script>
  141. </head>
  142.  
  143. <body>
  144. <button id="toggleButton">Toggle</button>
  145. <br/>
  146. <div class="container">
  147. <div class="row">
  148. <ul class="timeline" id="timeline">
  149. <li class="li complete">
  150. <div class="timestamp">
  151. <span class="author">Abhi Sharma</span>
  152. <span class="date">11/15/2014<span>
  153. </div>
  154. <div class="status">
  155. <h4> Shift Created </h4>
  156. </div>
  157. </li>
  158. <li class="li complete">
  159. <div class="timestamp">
  160. <span class="author">PAM Admin</span>
  161. <span class="date">11/15/2014<span>
  162. </div>
  163. <div class="status">
  164. <h4> Email Sent </h4>
  165. </div>
  166. </li>
  167. <li class="li complete">
  168. <div class="timestamp">
  169. <span class="author">Aaron Rodgers</span>
  170. <span class="date">11/15/2014<span>
  171. </div>
  172. <div class="status">
  173. <h4> SIC Approval </h4>
  174. </div>
  175. </li>
  176. <li class="li">
  177. <div class="timestamp">
  178. <span class="author">PAM Admin</span>
  179. <span class="date">TBD<span>
  180. </div>
  181. <div class="status">
  182. <h4> Shift Completed </h4>
  183. </div>
  184. </li>
  185. <li class="li">
  186. <div class="timestamp">
  187. <span class="author">geovindu</span>
  188. <span class="date">11/15/2014<span>
  189. </div>
  190. <div class="status">
  191. <h4> 涂聚文 </h4>
  192. </div>
  193. </li>
  194. <li class="li">
  195. <div class="timestamp">
  196. <span class="author">geovindu,涂聚文</span>
  197. <span class="date">2/24/2015<span>
  198. </div>
  199. <div class="status">
  200. <h4>Geovin Du,geovindu,涂聚文 </h4>
  201. </div>
  202. </li>
  203. </ul>
  204. </div>
  205. <br/>
  206. <div class="row">
  207. <ul class="timeline" id="timeline">
  208. <li class="li complete">
  209. <div class="timestamp">
  210. <span class="author">Abhi Sharma</span>
  211. <span class="date">11/15/2014<span>
  212. </div>
  213. <div class="status">
  214. <h4> Shift Created </h4>
  215. </div>
  216. </li>
  217. <li class="li complete">
  218. <div class="timestamp">
  219. <span class="author">PAM Admin</span>
  220. <span class="date">11/15/2014<span>
  221. </div>
  222. <div class="status">
  223. <h4> Email Sent </h4>
  224. </div>
  225. </li>
  226. <li class="li complete">
  227. <div class="timestamp">
  228. <span class="author">Aaron Rodgers</span>
  229. <span class="date">11/15/2014<span>
  230. </div>
  231. <div class="status">
  232. <h4> SIC Approval </h4>
  233. </div>
  234. </li>
  235. <li class="li">
  236. <div class="timestamp">
  237. <span class="author">PAM Admin</span>
  238. <span class="date">TBD<span>
  239. </div>
  240. <div class="status">
  241. <h4> Shift Completed </h4>
  242. </div>
  243. </li>
  244. <li class="li">
  245. <div class="timestamp">
  246. <span class="author">geovindu,涂聚文</span>
  247. <span class="date">11/15/2014<span>
  248. </div>
  249. <div class="status">
  250. <h4>Geovin Du </h4>
  251. </div>
  252. </li>
  253. <li class="li">
  254. <div class="timestamp">
  255. <span class="author">geovindu,涂聚文</span>
  256. <span class="date">2/24/2015<span>
  257. </div>
  258. <div class="status">
  259. <h4>Geovin Du,geovindu,涂聚文 </h4>
  260. </div>
  261. </li>
  262. </ul>
  263. </div>
  264. </div>
  265. </body>
  266. </html>