色彩的流动
看上去在流动:
实际上没有任何位移。
CSS代码:
.flow-colorful { max-width: 600px; height: 150px; background: linear-gradient(to right, red, orange, yellow, green, cyan, blue, purple); animation: hue 6s linear infinite; } @keyframes hue { from { filter: hue-rotate(0deg); } to { filter: hue-rotate(360deg); } }
HTML代码:
<div class="flow-colorful"></div>
文字动效
第五届CSS大会
CSS代码:
.flow-slogon { font-size: 120px; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-image: linear-gradient(to right, red, yellow, lime, aqua, blue, fuchsia); animation: hue 6s linear infinite; }
HTML代码:
<h2 class="flow-slogon">第五届CSS大会</h2>
移动的错觉
斜纹进度条:
视觉上是前进,实际上是上下移动。
CSS代码:
.flow-twill { padding-right: 30%; height: calc(1.4142 * 20px); background: repeating-linear-gradient(45deg, teal, teal 10px, transparent 11px, transparent 19px, teal 20px); background-clip: content-box; animation: twill 1s linear infinite; position: relative; } .flow-twill::before { content: ''; position: absolute; width: 100%; height: 100%; background: linear-gradient(rgba(0,0,0,.5), hsla(0,0%,100%,.5), rgba(0,0,0,.5)); } @keyframes twill { from { background-position: 0 0; } to { background-position: 0 calc(-1 * 1.4142 * 40px); } }
HTML代码:
<div class="flow-twill"></div>
移动与水波的错觉
CSS模拟的波浪线
换个颜色再试试:
CSS代码:
.flow-wave { padding: 5px 0; } .flow-wave:hover, .flow-wave:focus { background: radial-gradient(circle at 10px -7px, transparent 8px, currentColor 8px, currentColor 9px, transparent 9px) repeat-x, radial-gradient(circle at 10px 27px, transparent 8px, currentColor 8px, currentColor 9px, transparent 9px) repeat-x; background-size: 20px 20px; background-position: -10px calc(100% + 16px), 0 calc(100% - 4px); animation: waveFlow 1s infinite linear; } @keyframes waveFlow { from { background-position-x: -10px, 0; } to { background-position-x: -30px, -20px; } }
HTML代码:
<a href="javascript:" class="flow-wave">hover我(移动端按下)</a>