
CodePenで公開されている、CSSやJavaScriptで作られたグリッチエフェクトのアイデアを15個セレクトしました。テキストにノイズを重ねるシンプルな表現から、WebGLのシェーダーやcanvasのピクセル操作を使った本格的なグリッチアートまで、幅広いバリエーションを集めています。各スニペットには実装のポイントも添えているので、どんな仕組みでズレや色収差を表現しているのかが把握しやすくなっています。気になる表現が見つかったら、実際のサイト制作の参考にしてみてください。
グリッチエフェクトのアイデア
Psycho Glitch (CSS variables & @keyframes)
CSS変数(カスタムプロパティ)を使用したグリッチテキスト
See the Pen Psycho Glitch (CSS variables & @keyframes) by Alex Nozdriukhin (@alexnoz) on CodePen.
- Author : Alex Nozdriukhin
- Link : CodePen – Demo
💡 実装のポイント
CSS変数の--top・--left・--v-heightを::before/::after側で再計算し、clip-pathで表示範囲を切り替える構成。glitch-a・glitch-bという2つの@keyframesがそれぞれ独立して適用されているため、ズレ方や周期を変えたい場合はこの2つの数値だけ調整すればよい。JSは使っておらず、CSS変数と擬似要素だけで完結している。
Pure CSS Glitch Experiment (Twitch Intro WIP)
上下に残像がスクロールするグリッチテキスト
See the Pen Pure CSS Glitch Experiment (Twitch Intro WIP) by Tee (@acupoftee) on CodePen.
- Author : Tee
- Link : CodePen – Demo
💡 実装のポイント
SCSSの@forループでrandom()関数を使い、noise-1・noise-2という2つの@keyframesを30ステップ分自動生成し、clip-path: inset()でランダムなノイズを表現している。文字のズレ色は.glitch::beforeがマゼンタ、::afterがライトグリーン。走査線は.scanlinesのrepeating-linear-gradientとmix-blend-mode: differenceで重ねている。SCSSがコンパイル前提のコードなので、そのままでは動かない点に注意。
glitch effect
揺らめきのあるグリッチエフェクト
See the Pen glitch effect by shawn (@melzshawn1998) on CodePen.
- Author : shawn
- Link : CodePen – Demo
💡 実装のポイント@mixin glitchCopyで::before/::afterの共通スタイルをまとめ、SCSSの@forループ(20ステップ)でclipとskewをランダム生成する構成。色はマゼンタ(#ff00c1)のみとシンプルで、テキスト全体にもglitch-skewというキーフレームでランダムな傾きを加えているのが特徴。
Lo-Fi VHS Text
古いフィルム(VHS)をイメージさせるグリッチエフェクト
See the Pen Lo-Fi VHS Text by Alec Reimel (@areimel) on CodePen.
- Author : Alec Reimel
- Link : CodePen – Demo
💡 実装のポイント
jQueryで.text内のspanを4つ複製し、ズレ表示用のレイヤーを増やす仕組み。span:nth-child(1)〜(5)ごとに色(red/green/blue/white)とぼかし量を変えており、jerkwhole・jerkblueなど複数の@keyframesを組み合わせて不規則な揺れを演出している。層の数を変えたい場合はJS側のfor文のループ回数を調整すればよい。
VHS text
古いフィルム(VHS)をイメージさせるグリッチエフェクト
See the Pen VHS text by Maria (@shorinamaria) on CodePen.
- Author : Maria
- Link : CodePen – Demo
💡 実装のポイント
SCSS変数$offset(6px)で色ズレの幅を一括管理している構成。#textの:before(グリーン)と:after(ブルー)をmix-blend-mode: screenで重ね、skew・moveという2つの@keyframesで動かしている。走査線はJSでwindow.innerHeightから本数を計算して.line要素を動的生成しており、リサイズ時にも再描画される。
Annoying CRT retro flicker
レトロなモニターのような効果のあるグリッチエフェクト
See the Pen Annoying CRT retro flicker by Patrick H. Lauke (@patrickhlauke) on CodePen.
- Author : Patrick H. Lauke
- Link : CodePen – Demo
💡 実装のポイントhtml要素全体にtext-shadowを2色(マゼンタ/グリーン)重ねてズラし、textflickerという@keyframesをanimation-duration: 0.01sという極端に短い時間でinfinite再生することでチラつきを表現するシンプルな構成。JSは不使用で、ドット風フォントを@font-faceで埋め込んでいる。フォントを変えるだけでも印象が大きく変わる。
Simple text glitch
テキストを重ねたアニメーションのグリッチエフェクト
See the Pen Simple text glitch by Luke Meyrick (@lukemeyrick) on CodePen.
- Author : Luke Meyrick
- Link : CodePen – Demo
💡 実装のポイント
色や位置のズレではなく、SCSSの@forループ(50ステップ)でfont-weight・font-style・text-decoration・text-transformをランダムに切り替える、タイポグラフィが暴れるタイプのグリッチ表現。SCSSのリスト(nth()関数)とrandom()を組み合わせて生成している。画像・色を使わずテキストだけで成立するのが特徴。
GLSL Glitch
three.jsを使用したイメージへのグリッチエフェクト
See the Pen GLSL Glitch by yoichi kobayashi (@ykob) on CodePen.
- Author : yoichi kobayashi
- Link : CodePen – Demo
💡 実装のポイント
three.jsのRawShaderMaterialでフラグメントシェーダーを自作し、GLSL側でRGBチャンネルのズレ・ブロックノイズ・走査線ノイズ・ホワイトノイズを合成する本格的な構成。CSSやJSのDOM操作ではなくWebGL/GLSLの知識が必要で、他のPenよりカスタマイズの難易度は高め。bgImg.init()の画像URLを差し替えれば別の画像にも適用できる。
CSS Image Glitch
CSSのみで表現したイメージへのグリッチエフェクト
See the Pen CSS Image Glitch by Kite (@ixkaito) on CodePen.
- Author : Kite
- Link : CodePen – Demo
💡 実装のポイント
SCSSの@function rand()でランダムな値を生成し、@mixin glitch内の@forループでclip-path: polygon()によるスライスをランダムな位置・タイミングで切り替える構成。animation-timing-functionにsteps(1, jump-end)を指定することで、なめらかな動きではなくコマ送りのようなカクつきを再現しているのがポイント。
Css Glitch Image Effect Dynamic
画像のズレを利用したイメージへのグリッチエフェクト
See the Pen Css Glitch Image Effect Dynamic by Nathan Dickison (@faithworksio) on CodePen.
- Author : Nathan Dickison
- Link : CodePen – Demo
💡 実装のポイントdata-img属性に指定した画像URLをjQueryで読み取り、addRuleプラグインで:before疑似要素のCSSルールを動的生成する仕組み。glitch1・glitch2の2つの@keyframesでbackground-positionとhue-rotate()を組み合わせ、ズレと色相の変化を演出している。複数枚並べたい場合は.glitch要素をdata-img違いで複製するだけでよい。
Glitchy Rainbow Panda
gsapを使用したイメージへのグリッチエフェクト
See the Pen Glitchy Rainbow Panda by Szenia Zadvornykh (@zadvorsky) on CodePen.
- Author : Szenia Zadvornykh
- Link : CodePen – Demo
💡 実装のポイント
canvasに描画した画像のピクセルデータを直接操作し、RGBの各チャンネルをsin/cosの波形でずらして再配置するJavaScript実装。TweenMax(GSAP)でwaveAmp・waveFrq・posといった変数を時間経過でアニメーションさせ、その値をgetChannel()関数に渡してピクセル単位でズレを計算している。CSSでは再現しづらい、より本格的なグリッチアートに近い手法。
glitch glitch glitch
jQueryプラグイン「mgGlitch」を使用したグリッチ
See the Pen glitch glitch glitch by Hadrien Mongouachon (@hmongouachon) on CodePen.
- Author : Hadrien Mongouachon
- Link : CodePen – Demo
💡 実装のポイント
作者自作のjQueryプラグイン「mgGlitch」を読み込んで.glitch-imgにオプション付きで適用するだけの構成。blendModeTypeやglitch1TimeMin/glitch1TimeMax、glitch2TimeMin/glitch2TimeMaxといったオプション値だけで揺れの間隔や強さを調整できるため、CSS/JSを書かずにカスタマイズできるのが最大の特徴。
Cryptaris Glitch Button
ホバー時にグリッチエフェクトが掛かるボタン
See the Pen Cryptaris Glitch Button by Josh Beckwith (@positlabs) on CodePen.
- Author : Josh Beckwith
- Link : CodePen – Demo
💡 実装のポイント
Pug(テンプレートエンジン)のfor文でラベルテキストを5つの.mask要素に複製し、それぞれを重ねてホバー時にズレて見せるレイヤー構造になっている。層の数を増減したい場合はfor i in [1, 2, 3, 4, 5]の配列の要素数を変えるだけでよく、マークアップ側の仕組みがシンプルなのが扱いやすいポイント。
Cyberpunk 2077 Glitch Button
サイバーパンク風のグリッチ効果のあるボタン
See the Pen Cyberpunk 2077 Glitch Button by Steven Lei (@stevenlei) on CodePen.
- Author : Steven Lei
- Link : CodePen – Demo
💡 実装のポイントbutton::afterに5つのclip-path用CSS変数(--slice-1〜--slice-5)を用意しておき、hover時のglitchキーフレームでそれらを順番に切り替えながらtransform: translateで位置をずらす構成。animation-timing-functionにsteps(2, end)を使うことで、なめらかな動きではなくカクカクした「グリッチ感」を出している。色は赤(#FF013C)とシアン(#00E6F6)の2色のみでCyberpunk風の配色を再現。
Pure CSS Glitch Link Interaction
ホバー時にテキスト・画像にグリッチが掛かるテキストリンク
See the Pen Pure CSS Glitch Link Interaction by Malaika Ishtiaq (@MalaikaIshtiaq) on CodePen.
- Author : Malaika Ishtiaq
- Link : CodePen – Demo
💡 実装のポイント
リンクのテキストを3つの要素に分け、それぞれの:before(赤)と:after(青)にclip: rect()とtext-shadowを設定し、hover時のみglitch-1・glitch-2の@keyframesを発火させる仕組み。さらにリンクの::before/::afterで背景画像をmix-blend-mode: hard-lightで重ね、hue-rotate()を使ったキーフレームで色もずらしている。テキストと画像、2種類のグリッチを組み合わせた凝った構成。
グリッチエフェクトとは?
グリッチエフェクトは、コンピューターグラフィックスにおいて使用されるエフェクトの一つで、意図的に映像や画像に不具合や乱れを起こすことで、芸術的な効果を得るために用いられます。
グリッチエフェクトは、元の映像や画像に様々な種類の不具合を発生させることができます。例えば、画像の一部が切り取られたり、色が反転したり、明るさやコントラストが変化したり、歪みや干渉が生じたりすることがあります。
このようなエフェクトは、芸術作品や音楽ビデオ、広告などで広く使用されています。また、映画やテレビ番組のオープニング映像やエフェクト、ゲームのシーンやキャラクターの演出などでもよく使われます。
CodePenとは?
CodePenは、HTML、CSS、JavaScriptを使ってウェブページのプロトタイプや実装を行うことができるオンラインの開発環境です。
CodePenでは、ウェブ開発者やデザイナーが、ブラウザ上でコードを書きながら、すばやく試行錯誤することができます。ユーザーは自分のプロジェクトを公開し、他のユーザーによるフィードバックを受けたり、共有することもできます。
CodePenには、エディター機能が搭載されており、HTML、CSS、JavaScriptのコードを入力することができます。また、ユーザーが公開したプロジェクトは、フロントエンドの技術を利用して動的な表現やアニメーションを作ることができます。
よくある質問
-
SCSSで書かれているコードはそのまま使えますか?
そのままでは動作しません。SCSSはコンパイルが必要なため、Sassのビルド環境がない場合はCodePen上の「View Compiled CSS」から通常のCSSを書き出して使用してください。
-
グリッチエフェクトを使う際、アクセシビリティ面で注意すべき点はありますか?
激しい点滅やチラつきを伴う表現は、光過敏性のある方や乗り物酔いのような症状を感じる方に負担となる場合があります。ページ全体ではなくワンポイントの演出にとどめる、
prefers-reduced-motionメディアクエリでアニメーションを抑える配慮をするなどの対応がおすすめです。 -
グリッチエフェクトはサイトのパフォーマンスに影響しませんか?
CSSのアニメーションだけで完結しているものは負荷が小さく実務でも使いやすいですが、canvasでピクセルを直接書き換えるものやWebGL(GLSL)のシェーダーを使うものは処理が重くなりがちです。使用箇所を絞る、スクロールで画面外に出たら停止するなどの工夫を検討するとよいでしょう。

