パーツ番号 08-03-06 ・ JavaScript使用
通知ベル振動
ホバーまたはクリックでベルが左右に揺れ、赤い件数バッジがぷるんと弾みます。WordPress管理画面やヘッダーの通知アイコンに向いています。
プレビュー
ソースコード
HTML
<button class="d08-03-06-btn" type="button" aria-label="通知">
<svg class="d08-03-06-bell" viewBox="0 0 24 24" width="42" height="42" aria-hidden="true">
<path fill="#2a2d3a" d="M12 2a6 6 0 0 0-6 6c0 3.4-1 5.2-2 6.4-.5.6-.1 1.6.8 1.6h14.4c.9 0 1.3-1 .8-1.6-1-1.2-2-3-2-6.4a6 6 0 0 0-6-6z"/>
<path fill="#2a2d3a" d="M10 19a2 2 0 0 0 4 0z"/>
</svg>
<span class="d08-03-06-badge">3</span>
</button>CSS
.d08-03-06-btn{background:#fff;border:1.5px solid #e2e2e8;border-radius:14px;width:64px;height:64px;position:relative;cursor:pointer;display:flex;align-items:center;justify-content:center}
.d08-03-06-bell{transform-origin:top center}
.d08-03-06-btn:hover .d08-03-06-bell,.d08-03-06-btn.is-ring .d08-03-06-bell{animation:d08-03-06-shake .7s ease}
@keyframes d08-03-06-shake{0%,100%{transform:rotate(0)}15%{transform:rotate(14deg)}30%{transform:rotate(-12deg)}45%{transform:rotate(9deg)}60%{transform:rotate(-6deg)}75%{transform:rotate(3deg)}}
.d08-03-06-badge{position:absolute;top:8px;right:10px;background:#ff3b52;color:#fff;font-size:11px;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 4px}
.d08-03-06-btn:hover .d08-03-06-badge,.d08-03-06-btn.is-ring .d08-03-06-badge{animation:d08-03-06-bump .7s ease}
@keyframes d08-03-06-bump{0%,100%{transform:scale(1)}30%{transform:scale(1.4)}50%{transform:scale(.85)}70%{transform:scale(1.15)}}JavaScript
(function(){
var btn=document.querySelector('#item-08-03-06 .d08-03-06-btn');if(!btn)return;
btn.addEventListener('click',function(){btn.classList.remove('is-ring');void btn.offsetWidth;btn.classList.add('is-ring');});
})();クラス名 .d08-03-06 は本ライブラリ内での識別用です。複数のパーツを同じページで使う場合は、重複しないよう名前を変更してください。