スキップしてメイン コンテンツに移動

CSSだけ!画像なし!テキストの色を半分変えるテクニック





こんにちは、クリエイティブフレークです。

この例は、画像を使わないでテキストだけでコーディングしています。

そんなの画像を使えば済む話じゃない?という考えの方もCSSだけで組むとこんなにいいことがあります。



メリット1
全体のファイルサイズが小さくなる

メリット2
テキストなのでSEOとしても効果的

メリット3
文字の変更、フォントサイズ、色の変更が簡単



作り方は簡単。

まずはどうやって表示しているのかという仕組みから説明します。







ベースとなる文字の上に

別の色で半分だけの文字を

かぶせるだけ



次はソースコードです。



HTML

<span class="halfStyle hs-base" data-content="H">H</span>
<span class="halfStyle hs-base" data-content="a">a</span>
<span class="halfStyle hs-base" data-content="l">l</span>
<span class="halfStyle hs-base" data-content="f">f</span>



CSS

.halfStyle .hs-base, {
 position: relative;
 display: inline-block;
 font-size: 80px;
 overflow: hidden;
 white-space: pre;
 color: #3c2210;
}
.halfStyle .hs-base:before {
 display: block;
 z-index: 1;
 position: absolute;
 top: 0;
 width: 50%;
 content: attr(data-content);
 pointer-events: none;
 overflow: hidden;
 color: #63c8df;
}
文字を1文字ずつspanで囲み、1文字に対して色違いで2種類表示させるために attr(data-content) を使います。

あとは見ての通り、親となるpositionをrelative、上から乗せる文字の方をabsoluteとします。

CSSの color の箇所に好きなカラーコードを入れるだけで応用ができます。



たとえば、width: 50%; を、 height: 50%; に書き換えると、上下で色が変わります。



もちろん、日本語だってこの通り!







Written by Creative Flake

コメント

このブログの人気の投稿

太字にしても文字を潰さない方法「太字に強い無料の日本語フォント」付き

PhotoshopやIllustratorなどで、太文字を書きたいとき文字がつぶれて見づらいことはありませんか? つぶれ文字の場合 文字がつぶれてしまった場合の多くは、 ・ボールド「B」で太くしている ・枠線をつけて太くしている こういうケースが多く見られます。 これは、元の文字の外側に太線をつけるため、スキマが埋められてしまうことでつぶれて見えるためです。 つぶれない文字にするには 文字をつぶさないようにするには、文字そのもののウェイトで調整します。 ウェイトというのは「太さ」という意味です。 例えば、「●●ゴシック-M」とか、「▲▲明朝-W3」などという、フォント名の最後にアルファベットや数字がついているのを見たことはありませんか? まずはフォント(文字)を選ぶ際に、ウェイトのバリエーションが存在するかどうか確認してから使うことをおすすめします。 太字にできる無料の日本語フォント そもそもどんなフォントが太字のバリエーションがあるのか、今回は無料の日本語フォントを紹介します。 M+フォント やや丸みのあるやさしいイメージのゴシックフォント。 極細から太字までフォントウェイトがあります。 【ライセンス】商用・非商用可。利用、複製、再配布可能。 配布サイトでダウンロード Kazesawaフォント こちらも丸みのある、認識性の高いフォントです。 エクストラライトからエクストラボールドまで6種類のウェイトがあります 【ライセンス】SIL Open Font License準拠 配布サイトでダウンロード 源ノ角ゴシック AdobeとGoogleが共同開発したオープンソースのフォントです。 エクストラライトからヘビーまで7種類のウェイトがあります 【ライセンス】SIL Open Font License準拠 配布サイトでダウンロード Rounded M+ 丸ゴシックのかわいい感じなのに品のあるのフォントです。 また、「標準」、「丸さ強め」、「丸さ弱め」からも選んでダウンロードが可能です。 【ライセンス】商用・非商用可。利用、複製、再配布可能。 配布サイトでダウンロード Written by Cr...

ブログ移転のお知らせ

いつもご覧いただきありがとうございます。 当ブログは下記URLへと引っ越しました。 http://blog2.creativeflake.com/ 今後はこちらをご覧ください!!

CSSでドット絵を描いてみよう

ドット絵(ピクセルアート)は1980年代ごろのパソコンやゲーム機で、最もよく使われた画像の表現方法でしたが、パソコン等の高解像度化にともなって、ドット絵を使われることはほとんどなくなりました。 以前は解像度が低かったため、写真や画像を今のようにきれいに表示することができなかったので、ドットで描画することが主流でした。目で見てピクセルだと分かる範囲がドット絵と呼ぶそうです。 今だからこそ逆に斬新、かわいいと思うこともあるのですが、せっかくなのでドット絵をCSSだけで描画したいと思います。 もちろん、こんなチョコボを描くことも余裕でできます。 ドット絵に使うCSS HTMLやCSSを使って描く表現方法はさまざま考えられますが、今回は「box-shadow」のみで描いていきたいと思います。 box-shadowでドットを描く HTML <div></div> まずHTMLには空のdivを用意してあげます。これだけでHTMLは完成です。 CSS div { background: transparent; width: 10px; height: 10px; box-shadow: 0 10px red, 10px 20px blue, 20px 10px green; } CSSは基点<(0, 0)の場所>をtransparent(透明)とし、基本となるドットの大きさを縦、横ともに10pxずつと設定します。 そのときに、基点から下へ10pxの箇所に赤いドットを、右へ10px、下へ20pxの箇所に青いドットを、右へ20px、下へ10pxの箇所に緑のドットを描画します。 ↓↓↓こんな感じで表示されます 本来box-shadow(ボックスシャドウ)は指定した要素に立体っぽく影をつけるCSSなのですが、ぼかし具合を入力しないことでゼロ、つまりただの直線として認識されます。 ざくざく作っていこう こんな感じで、ドット絵を書いていくには元画像を準備し、ピクセル単位で描画していきます。 チョコボを描く(HTML) <div id="chocobo...