animation2code benchmark
For best compatibility, please view this dashboard in a Chrome browser.
← back to SVG Loading icons

model output

GPT-5.4

SVG Loading icons

A 0.84T 0.29
compare with ground truth →
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>Minimal Triple Bar Loader</title>
7<style>
8  :root{
9    --bg:#2f363b;
10    --orange:#d86f17;
11    --orange-dim:rgba(216,111,23,.28);
12    --w:4px;
13    --h:18px;
14    --gap:5px;
15    --dur:1.05s;
16  }
17
18  html,body{
19    margin:0;
20    width:100%;
21    height:100%;
22    overflow:hidden;
23    background:var(--bg);
24  }
25
26  body{
27    position:relative;
28    font-family:sans-serif;
29  }
30
31  .loader{
32    position:absolute;
33    left:50%;
34    top:42px;
35    transform:translateX(-50%);
36    display:flex;
37    gap:var(--gap);
38    align-items:center;
39    justify-content:center;
40  }
41
42  .bar{
43    width:var(--w);
44    height:var(--h);
45    border-radius:1px;
46    background:linear-gradient(to bottom,
47      rgba(255,170,70,.18) 0%,
48      var(--orange) 18%,
49      var(--orange) 82%,
50      rgba(120,55,10,.55) 100%);
51    transform-origin:center center;
52    opacity:.95;
53    animation:pulse var(--dur) linear infinite;
54    box-shadow:0 0 0 0.2px rgba(255,140,40,.25);
55  }
56
57  .bar:nth-child(1){ animation-delay:0s; }
58  .bar:nth-child(2){ animation-delay:.14s; }
59  .bar:nth-child(3){ animation-delay:.28s; }
60
61  @keyframes pulse{
62    0%, 100%{
63      opacity:.28;
64      transform:scaleY(.78);
65      filter:brightness(.72);
66    }
67    16%{
68      opacity:.45;
69      transform:scaleY(.88);
70      filter:brightness(.85);
71    }
72    34%{
73      opacity:1;
74      transform:scaleY(1.08);
75      filter:brightness(1.18);
76    }
77    50%{
78      opacity:.92;
79      transform:scaleY(1);
80      filter:brightness(1.05);
81    }
82    68%{
83      opacity:.5;
84      transform:scaleY(.86);
85      filter:brightness(.82);
86    }
87    84%{
88      opacity:.3;
89      transform:scaleY(.78);
90      filter:brightness(.72);
91    }
92  }
93</style>
94</head>
95<body>
96  <div class="loader" aria-label="loading">
97    <span class="bar"></span>
98    <span class="bar"></span>
99    <span class="bar"></span>
100  </div>
101</body>
102</html>