CSSだけで「画像に重ねた文字のはみ出し部分」のテキスト色を変える方法

流行りの文字が画像からはみ出たデザインで、画像の上だけ文字色を変えたい!
最近流行りの画像から文字ズラすデザイン、CSSだけで簡単にできるので、やり方を解説しよう!
いくつかやり方はあるが、今回はCSSだけでシンプルに2つのテキストを重ねる方法で解説しよう!
背景画像が可変しても問題無い方法であり、さらに2つの同じテキストが、SEO的にスパム扱いされないように考慮した方法で解説したいと思う!
実際のHTMLとCSSのコード
まずは、実際のコードをCodePenで見てみよう!
See the Pen
ズラしテキスト by stand4u (@stand4u)
on CodePen.
テキストはみ出し部分を色変更する「仕組み」
基本的な仕組みとしては、まったく同じテキストを2つ同じ位置に重ねて、上になっている方のテキストの親ボックスを背景画像のBOXと同じ位置、同じ大きさに設定した上でoverflow:hedden;
をかける事で、はみ出た部分を非表示にする。
はみ出た部分は、下に重なっているテキストが見えているだけというシンプルな仕組み。
ただ、同じテキストを2つ記述するのは、SEO的にスパム扱いされても困るので、片方のテキストは疑似要素の::after
で記述するという方法だ。疑似要素はSEO的に文字として認識されないはず。
HTMLのコード解説
<div class="outer">
<h1 class="black">
HELLO <br>WORLD
</h1>
<div class="white"></div>
<div>
HTMLのコードを解説すると、外側のdiv.outer
が背景画像を入れるBOXであり、その子要素としてH1のテキストを入れ、分かりやすく.black
と名づけている。
H1と並列(兄弟)要素として、空のDIVを作り、コチラは.white
と名付ける。この空DIVは、擬似要素::after
を使ってH1と同じテキストを設定するためのもの。
CSSコードの解説
.outer {
position:relative;
background-color:#ccc;
width:50%;
height:300px;
}
.black{
position:absolute;
right:-120px;
top:90px;
font-size:50px;
color:#000;
z-index:-1;
}
.white{
position:relative;
width:100%;
height:300px;
overflow:hidden;
}
.white::after{
position:absolute;
right:-120px;
top:90px;
content:"HELLO \A WORLD";
white-space: pre;
font-size:50px;
font-weight:bold;
color:white;
z-index:1;
}
上から順に解説していこう。.outerには任意のサイズを設定し、必要に応じて背景画像などを設定。position:relative;
に設定して、positionの基準BOXとする。
次にH1(.black)にタイトルテキストを入れて、position:absolute;
で画像からはみ出るように位置をずらす。right:-120px
と指定する事で、背景画像(親要素)の右からの位置を指定できる。
また、.blackにはz-index:-1;
を指定する事で、背景画像よりも背面に配置しておく。
次に、上から重ねる文字の設定。
空DIVである.white
は、背景画像用の.outer
と全く同じ大きさに設定する。
こちらもposition:relative;
に設定して、positionの基準とした上で、oveflow:hidden;
を設定する。このボックスからはみ出した部分が消えるという仕組みにする為だ。
最後に、.white::after
で疑似要素を指定して、H1と同じテキストで同じ大きさ同じ位置に配置し、z-index:1;
で最前面に設定した上で、文字の色を白など任意の色に設定。
疑似要素は改行できる!
ちなみにcontent:"HELLO \A WORLD";
の\A
という記述は、次のwhite-space: pre;
と一緒に指定する事で、疑似要素の中で改行が指定できる記述だ。
疑似要素を改行できる事を意外と知らない人が多い(僕も知らなかったw)
これで、疑似要素として表示されるテキストは、親要素からはみ出た部分は非表示になり、その下にあるH1のテキストの黒文字が見えるという仕組みなのだ!
まとめ
仕組みを見ると意外とシンプルな記述で実現できる、テキストはみ出しデザイン!
流行りのデザインなので、コーディングする機会もちょくちょく出てくるだろう!ぜひともあなたのWEBサイトでも実験してみてほしい!
※当記事の掲載内容は執筆現在の個人の見解・調査によるもので、動作・サービス等を保証するものではありません。最新情報は各公式サイトでご確認頂き、購入・契約・データ作成等はご自身の判断・責任でお願いします。 免責事項
関連記事

CSSの背景画像指定!backgroundの使い方とプロパティの説明書

CSS Flexboxの使い方 「図解付き」で解説する横並びレイアウト

CSSの優先順位(詳細度)の仕組みと「点数の計算方法」

【コピペでOK】CSSだけでLINE風の「吹き出し」を作る方法!

【初心者】CSS(スタイルシート)の書き方の基本文法!

CSSだけ超簡単!画像トリミングできる 「object-fit」 の使い方

CSS3のtransitionでカッコイイ動きの作り方!

【保存版】CSSのセレクタの完全ガイド!

CSSの背景画像のサイズ指定「backgrouond-size」の使い方
サイト内検索
新着記事
- YouTubeより詳しく!まとめて学べる『WEBデザイン動画講座』
- Figmaの背景切り抜きプラグイン『Remove BG』のAPI Key取得方法と使い方
- WEBデザイン動画講座のご紹介【お得な割引アリ】
- WixでWEBデザイナーが「ポートフォリオサイト」を作ってみた!
- WEBデザインツールの比較!初心者におすすめは?Figma Photoshop Xd Illustrator
- CodeCampGATE(コードキャンプゲート)とは?転職・就職先と評判
- コードキャンプの「Webデザイン・Webデザイン副業コース」を卒業生が解説!
- テックアカデミー「はじめての副業コース」卒業生が内容を解説!
- PHPの独学!挫折しないおすすめ勉強方法!
- 16インチMacbook Proで使える100Wモバイルバッテリー Zendure SuperTankレビュー
- [体験談] CodeCamp(コードキャンプ)で挫折する理由!
- テックアカデミー「受講した感想・評判」学習内容の総まとめ!
- Photoshop 超リアルな商品写真の鏡面反射の作り方
- デイトラの評判は?詳細内容とメリット・デメリットを解説
- CSSだけ超簡単!画像トリミングできる 「object-fit」 の使い方
- コードキャンプ 「無料体験・カウンセリング」を受講してみた!予約方法や内容の体験談
- デジタルハリウッドSTUDIO by LIGの評判
- PhotoshopでWEBデザインする基本の設定とテクニック
- テックアイエス評判は?現役プロがTECH I.S.を徹底調査!
- WEBデザインの練習・勉強をしながら「お金までもらえる」超おすすめの学習方法!
カテゴリー
タグリスト