ノイズテキストCSSの紹介
Original:
Title: CSS Glitched Text
Author: Lucas Bebber
Source: https://codepen.io/lbebber/pen/ypgql
License: MIT License
HELP
仕組み: ある要素のbeforeとafterにその要素のdata-textに入れられた値を格納する。beforeとafterの文字の位置は、親要素の文字の位置とずれている。
アニメーションでbeforeとafterの一部を親要素に描画する。上記の通りbeforeとafterの文字の位置は親要素とずれている為、結果として文章の形がノイズがかかったように乱れる。
上記の仕組みの為、親要素内のテキストとdata-textの内のテキストは同じものにしないといけない。また、beforeとafterに背景色を設定し、親要素の文字を背景で塗りつぶして隠す必要がある。
また動作の仕様上ノイズは1行目にしかかからない。
共通CSSアニメーション:
@keyframes noise-anim { 0% { clip: rect(27px, 9999px, 93px, 0); } 5% { clip: rect(88px, 9999px, 3px, 0); } 10% { clip: rect(21px, 9999px, 64px, 0); } 15% { clip: rect(63px, 9999px, 64px, 0); } 20% { clip: rect(21px, 9999px, 27px, 0); } 25% { clip: rect(27px, 9999px, 98px, 0); } 30% { clip: rect(23px, 9999px, 57px, 0); } 35% { clip: rect(6px, 9999px, 27px, 0); } 40% { clip: rect(38px, 9999px, 65px, 0); } 45% { clip: rect(43px, 9999px, 53px, 0); } 50% { clip: rect(56px, 9999px, 7px, 0); } 55% { clip: rect(63px, 9999px, 87px, 0); } 60% { clip: rect(65px, 9999px, 2px, 0); } 65% { clip: rect(69px, 9999px, 6px, 0); } 70% { clip: rect(78px, 9999px, 10px, 0); } 75% { clip: rect(84px, 9999px, 21px, 0); } 80% { clip: rect(52px, 9999px, 36px, 0); } 85% { clip: rect(69px, 9999px, 35px, 0); } 90% { clip: rect(39px, 9999px, 31px, 0); } 95% { clip: rect(27px, 9999px, 79px, 0); } 100% { clip: rect(3px, 9999px, 71px, 0); } } @keyframes noise-anim-2 { 0% { clip: rect(89px, 9999px, 41px, 0); } 5% { clip: rect(59px, 9999px, 17px, 0); } 10% { clip: rect(74px, 9999px, 94px, 0); } 15% { clip: rect(100px, 9999px, 95px, 0); } 20% { clip: rect(59px, 9999px, 44px, 0); } 25% { clip: rect(36px, 9999px, 29px, 0); } 30% { clip: rect(45px, 9999px, 52px, 0); } 35% { clip: rect(90px, 9999px, 11px, 0); } 40% { clip: rect(90px, 9999px, 62px, 0); } 45% { clip: rect(29px, 9999px, 64px, 0); } 50% { clip: rect(44px, 9999px, 78px, 0); } 55% { clip: rect(27px, 9999px, 34px, 0); } 60% { clip: rect(67px, 9999px, 69px, 0); } 65% { clip: rect(73px, 9999px, 59px, 0); } 70% { clip: rect(37px, 9999px, 42px, 0); } 75% { clip: rect(34px, 9999px, 61px, 0); } 80% { clip: rect(45px, 9999px, 7px, 0); } 85% { clip: rect(33px, 9999px, 4px, 0); } 90% { clip: rect(55px, 9999px, 95px, 0); } 95% { clip: rect(52px, 9999px, 85px, 0); } 100% { clip: rect(81px, 9999px, 7px, 0); } }
ベーシック:
You
ダブルカラー:
Want
HackingStyle:
SCP
page revision: 5, last edited: 01 Jul 2018 17:25