• HOME > 
  • CSS > 
  • CSSのtext-shadowの使い方【文字に影をつけたり縁...

CSSのtext-shadowの使い方【文字に影をつけたり縁取りできるプロパティ】

投稿日:

このページにはGoogleアドセンス広告とアフィリエイト広告が含まれています。

カテゴリー記事のアイキャッチ画像

本記事は執筆時点(2020年12月26日)の情報をベースにしております。掲載している情報が最新ではない可能性がありますので何卒ご容赦ください。

広告
広告

text-shadowプロパティとは?

text-shadowは、文字に影をつけるためのプロパティです。文字の影はドロップシャドウとも呼ばれます。

次の例のように、影の濃さや色、範囲・位置を自由に設定することが可能です。

text-shadowの例

text-shadowの使い方

text-shadowは次のように、「水平位置・垂直位置・影のぼかし範囲・色」という値を記述して使用します。

text-shadowの書き方

影の設定は、記述する順番によって意味合いが変わってしまうので注意してください。左から順につぎのように決められていて、影のぼかしの範囲と色は省略することができます。

  1. 水平(横)方向の位置
  2. 垂直(縦)方向の位置
  3. 影のぼかしの範囲(長さ)【省略可】
  4. 影の色【省略可】

HTML

<p class="sample1">ダミーテキスト</p>

CSS

.sample1{
    text-shadow:5px 5px 5px #333;
}

プレビュー

text-shadowの例

影の表示位置を変更する

text-shadowは文字の位置を基準の「0」として、そこから正と負(マイナス)の数値を使って上下左右に自由に移動することができます。

水平方向正の値右へ移動
負の値左へ移動
垂直方向正の値下へ移動
負の値上へ移動

水平方向・垂直方向両方とも0を指定することもできます。文字の真下(真後ろ)に影ができるので、ぼかしの範囲を省略すると影が認識できません。

HTML

<p class="sample1">ぼかしなし</p>
<p class="sample2">ぼかしあり</p>

CSS

.sample1{
    text-shadow:0px 0px;
}
.sample2{
    text-shadow:0px 0px 5px;
}

プレビュー

ぼかしなし
ぼかしあり

影のぼかし範囲(長さ)を指定する

ぼかし範囲は省略もしくは0を指定すると文字と同じ形の影が表示され、数値を大きくすれば影は範囲は大きくなりますが同時に濃さが薄くなっていきます。

HTML

<p class="sample1">ダミーテキスト</p>
<p class="sample2">ダミーテキスト</p>
<p class="sample2">ダミーテキスト</p>

CSS

.sample1{
    text-shadow:0px 0px 5px;
}
.sample2{
    text-shadow:0px 0px 15px;
}
.sample3{
    text-shadow:0px 0px 25px;
}

プレビュー

ダミーテキスト
ダミーテキスト
ダミーテキスト

影の色を指定する

最後に影の色を変更します。色名・カラーコード・RGBのいずれかで指定します。省略した場合は文字の色が適用されます。

HTML

<p class="sample1">ダミーテキスト</p>
<p class="sample2">ダミーテキスト</p>
<p class="sample2">ダミーテキスト</p>

CSS

.sample1{
    text-shadow:0px 0px 10px red;/*赤*/ 
}
.sample2{
    text-shadow:0px 0px 10px #0000d4;/*青*/
}
.sample3{
    text-shadow:0px 0px 10px rgb(255,255,0);/*黄色*/
}

プレビュー

ダミーテキスト
ダミーテキスト
ダミーテキスト

複数の影を重ねる方法

text-shadowはカンマで区切って記述することで、複数の影を重ねて表示させることもできます。

HTML

<p class="sample1">ダミーテキスト</p>

CSS

.sample1{
    text-shadow:-1px -1px 5px #d4ff00,5px 5px 5px #0000d4,-5px -5px 5px #d40000;/*3色の影を付ける*/
}

プレビュー

ダミーテキスト

text-shadowで文字を縁取りする方法

text-shadowを応用すると、影を使って文字の縁取りを行うことができます。次のように複数の影を上下左右にずらして表示することで、縁取りしているように見せることができます。

HTML

<p class="sample1">ダミーテキスト</p>

CSS

.sample1{
    color:#ffffff;
    /*文字を縁取る*/
    text-shadow:1px 1px #000000,
                1px -1px #000000,
                -1px 1px #000000,
                -1px -1px #000000;
}

プレビュー

ダミーテキスト

ひとつスタイルを用意しておけば、文字を修正しても自動的に縁取り文字で表示できるので便利です。

しかしながら、あくまで影を利用した応用技なので拡大してみるとつなぎ目が途切れていることがわかります。綺麗な縁取り文字にこだわる場合は描画ソフトなどで画像として用意した方が良いかもしれません。

text-shadowが効かないときは?

text-shadowを指定したのに思い通りに反映されない場合は、次のような点を確認してみましょう。

  • コードに記述ミスはないかどうか?
  • 同じセレクターで重複して指定していないか?
  • セレクターの優先順位は正しいかどうか?

コードに記述ミスはないかどうか?

CSSはスペルミスやコロン・セミコロンを付け忘れているだけで反映されなくなりますので今一度確認してみてください。text-shadowの箇所以外が間違っていても同様ですので遡ってチェックしましょう。

同じセレクターで重複して指定していないか?

CSSは同じセレクターの場合、後から記述したものが優先されます。同じセレクターでtext-shadowを指定していないか確認してみてください。

セレクターの優先順位は正しいか?

同じ要素でもCSSのセレクターには優先順位があり、基本としてはタグよりもクラス、クラスよりもIDに指定した値が優先されます。以前に別のセレクターを使ってtext-shadowを指定していないかなど確認してみてください。

リンク先のサムネイル
CSSのセレクターとは?【種類と使い方をわかりやすく解説】

CSSのセレクタ―は、スタイルを適用させたいHTML要素の特定に使います。このページではセレクターの種類と使い方を解説します。セレクタ―を使ってスタイルを指定することで...【もっと読む】

まとめ

以上が、CSSのtext-shadowプロパティの使い方です。

影を付けるだけで立体感が増して文字を印象付けることができます。しかしながら、多用しすぎると見づらくなったり安っぽさが出てしまうので注意が必要です。影の色や位置など、他のサイトのデザインを研究して使って見ましょう。

広告
広告

関連する記事

サムネイル

CSSでPNG画像に影を落とす方法【filterプロパティd……

2025年01月15日
CSSでドロップシャドウをつけるには? CSSで要素に影(ドロップシャドウ)を付ける手段としては「box-shadow」や「text-shadow(テキストの場 […]
サムネイル

CSSのfilterプロパティの関数の種類と効果をまとめ【フ……

2025年01月06日
最終更新日:2025年01月15日
IEのサポートが終了したので、これまで使う機会の少なかったfilterプロパティを改めて調べたところ、CSSでの表現の幅を広げてくれる画期的なプロパティだと気づ […]
サムネイル

CSSで写真にぼかし加工を加える方法【filterプロパティ……

2025年01月06日
CSSだけで写真をぼかせる? CSSのfilterプロパティのblur()関数を使うと、画像(要素)にぼかしを加えることができます。 画像編集ソフトを使うことな […]
サムネイル

CSSで写真の明るさ(明度)を調整する方法【filterプロ……

2025年01月06日
CSSだけで画像の明度を調整できる? CSSのfilterプロパティのbrightness()関数を使うと、画像(要素)の明るさを変更することができます。 画像 […]
サムネイル

CSSで写真のコントラストを変更する方法【filterプロパ……

2025年01月06日
CSSだけで写真のコントラストを調整できる? CSSのfilterプロパティのcontrast()関数を使うと、画像(要素)のコントラストを変更することができま […]
サムネイル

CSSで写真を白黒に変更する方法【filterプロパティgr……

2025年01月06日
CSSだけで写真を白黒にできる? CSSのfilterプロパティのgrayscale()関数を使うと、画像(要素)を白黒に変更することができます。 グレースケー […]
サムネイル

CSSで写真をセピアに加工する方法【filterプロパティs……

2025年01月06日
CSSで写真をセピアに加工できる? CSSのfilterプロパティのsepia()関数を使うと、画像をセピア色に変換できます。 画像編集ソフトを使うことなくCS […]