// 逐字显示 /* HTML结构 */ <p>Hello World</p> /* CSS */ p { overflow: hidden; } p::after { content: attr(data-text); position: absolute; top: 0; left: 0; opacity: 0; transition: opacity 0.5s linear; } p.start::after { opacity: 1; } // 光标闪烁效果 /* HTML结构 */ <input type="text" value="Input Here"> /* CSS */ input[type="text"] { caret-color: #f00; animation: 1s blink step-end infinite; } @keyframes blink { from, to { caret-color: #f00; } 50% { caret-color: transparent; } } // 模拟打字效果 /* HTML结构 */ <p></p> /* CSS */ p.writing::after { content: "Hello World!"; white-space: pre; overflow: hidden; animation: 5s typing steps(10,end) forwards; } @keyframes typing { from, to { width: 0; } 50% { width: 100%; } }
以上三种方法都可以用于增强页面的交互性和视觉效果,可以根据需要选择适合的方法进行使用。