画像を使用せずに CSS のテクニックだけで文字の色を半分だけ変える方法を紹介します。
言葉での説明が難しいので、まずはサンプルをご覧になっていただいたほうが早いでしょう。
CSS3 Black & White : https://on-ze.com/demo/css3-black-white/
上記のサンプルではレスポンシヴにも対応。
すべてのデバイスで同じように表示させることに成功しています。
HTML の記述
同じテキストを2回記述するのではなく、カスタムデータ属性を追加しただけの非常にシンプルなコードです。
<p data-inverted="Black and White">Black and White</p>
ここではカスタムデータ属性は『data-inverted』と名付けています。
CSS の記述
続いてキモとなるスタイルシートの記述です。
p:before { content:attr(data-inverted); overflow:hidden; position:absolute; left:0; top:0; width:50%; color:#000; }
HTML側で追加したカスタムデータ属性をCSSのcontent:attr(data-inverted);
でコピーして、ベースのテキストとは違う色を指定します。
理屈がわかれば簡単ですが、目からウロコの斬新な発想ですよね。
ちなみに、このスタイルシートの設定でwidth:50%;
の箇所をheight:50%;
に変えると、文字の左右ではなく、上下で違う色を指定することが可能です。
縦バージョンのデモは以下。
CSS3 Black & White Vertical : https://on-ze.com/demo/css3-black-white-vertical
ぜひお試しください。