作り方は簡単です。
まずはこちらのコードを
shironuki.jsとして保存してください
document.querySelectorAll('[shironuki-style]').forEach(el => {
el.style.fontSize = '50px';
el.style.color = el.style.color || 'white';
const parts = el.getAttribute('shironuki-style').split('-');
const styleType = parts[0];
const thickness = parseInt(parts[1], 10);
const colors = parts[2].split('|');
let shadow;
switch (styleType) {
case 'simple':
shadow = `${-thickness}px ${-thickness}px 0 ${colors[0]}, ${thickness}px ${-thickness}px 0 ${colors[0]}, ${-thickness}px ${thickness}px 0 ${colors[0]}, ${thickness}px ${thickness}px 0 ${colors[0]}`;
break;
case 'blur':
shadow = `0 0 ${thickness}px ${colors[0]}`;
break;
case 'multi':
shadow = colors.map((c, i) => `${i + 1}px ${i + 1}px 0 ${c}`).join(',');
break;
case 'glow':
shadow = `0 0 ${thickness / 4}px ${colors[0]}, 0 0 ${thickness / 2}px ${colors[0]}, 0 0 ${thickness}px ${colors[0]}, 0 0 ${thickness * 1.5}px ${colors[0]}`;
break;
case 'dotted':
shadow = `${thickness}px ${thickness}px 0 ${colors[0]}, -${thickness}px -${thickness}px 0 ${colors[0]}, ${thickness}px -${thickness}px 0 ${colors[0]}, -${thickness}px ${thickness}px 0 ${colors[0]}, 0px ${thickness * 2}px 0 ${colors[0]}, ${thickness * 2}px 0px 0 ${colors[0]}, -${thickness * 2}px 0px 0 ${colors[0]}, 0px -${thickness * 2}px 0 ${colors[0]}`;
break;
case 'elegant':
shadow = `${thickness}px ${thickness}px ${thickness}px ${colors[0]}`;
el.style.fontFamily = 'Times New Roman, serif';
break;
case 'bold':
shadow = `${-thickness}px ${-thickness}px 0 ${colors[0]}, ${thickness}px ${-thickness}px 0 ${colors[0]}, ${-thickness}px ${thickness}px 0 ${colors[0]}, ${thickness}px ${thickness}px 0 ${colors[0]}`;
el.style.fontWeight = 'bold';
break;
default:
shadow = `1px 1px ${thickness}px ${colors[0]}`;
}
el.style.textShadow = shadow;
});
そしてHTML側で<script src=”shironuki.js”></script>で呼び出してください。
そうすると
白抜きにしたい文字に対して、
なんと
<div shironuki-style=”glow-20-purple”>光る紫白抜き</div>
とhtmlの属性に 白抜きスタイル=”種類,太さ,色”と書くだけで白抜きができます。
実際に白抜きしたものがこれになります。
動的白抜き文字バリエーション(新しい統一ロジック)
シンプルな縁取り
太い縁取り
ぼかし縁取り
色付き縁取り(黄+青)
多層縁取り(赤・青・黒)
グローエフェクト(赤)
グローエフェクト(青)
グローエフェクト(緑)
グローエフェクト(紫)
点状縁取り
信頼できる白抜き
エレガントな白抜き
かなり太字の白抜き
めちゃめちゃ簡単にできます。
白抜きの種別や色などどういう仕様かというと
基本的な使い方
白抜き効果を実現したい要素に、次の形式の属性を追加します。
shironuki-style="[スタイル]-[太さ]-[色]"
スタイルの種類
- simple: シンプルな縁取り
- blur: ぼかし効果
- glow: 光る効果
- multi: 複数色の多層縁取り
- dotted: 点状の縁取り
- elegant: エレガントな細い影
- bold: 太い縁取り
太さの指定
数値で影や縁取りの太さを指定します。数値が大きいほど効果が強くなります。
色の指定方法
CSSの色名またはカラーコードで指定します。複数の色を使用する場合は、|
(パイプ記号)で区切ります。
具体的な記述例
シンプルな縁取り
<div shironuki-style="simple-1-black">シンプル白抜き</div>
多層縁取り(複数色)
<div shironuki-style="multi-3-black|red|blue">多層白抜き</div>
グローエフェクト(光る効果)
<div shironuki-style="glow-20-red">光る赤白抜き</div>
導入方法
以下のスクリプトをHTMLに追加するだけで、ライブラリが使えるようになります。
<script src="shironuki.js"></script>
使用上の注意
- このライブラリはテキスト要素の
font-size
やcolor
を自動的に調整します。 - 色や太さの適切な指定によって多様な表現が可能です。
対応ブラウザ
Chrome、Firefox、Safari、Edgeなどの主要な最新ブラウザに対応しています。
ライセンス
MITライセンスで自由にご利用いただけます。