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

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

コメント

このブログの人気の投稿

ブログ移転のお知らせ

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

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

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

CSS3でアニメーションを作ってみよう(理論編)

こんにちは、クリエイティブフレークです。 Windows XPのサポートが終了してから、国内のIE10のシェア率が急激に高まり、Chromeも急伸しています。 これまでどうしてもIEの古いバージョンのユーザーのことを考慮すると、完全CSS3はまだ先かなと思うところでしたが、そろそろ勉強し始めどきかもしれません。 今回はCSS3だけで動くアニメーションの簡単なサンプルを。 【デモ : DEMO】 CSS3だけでアニメーション そもそも、アニメーションといえば、 ・gif(Photoshopなどでタイムラインでコマ送り。あくまで画像なのでパラパラ漫画と同じ理論。) ・Flash(タイムラインもしくはプログラミングで制御。見るにはFlash Playerのインストールが必要。) ・jQuery(JavaScript言語を使用して動的に制御。) 時代ごとに移り変わってきましたね。 では、こんなにアニメーションは存在するのに、なんでCSS3を使いたがるの? ・gifの欠点 gifアニメーションの欠点は細かく動かすとファイル容量が大きくなります。 また、滑らかな動きには向いていません。 ・Flashの欠点 FlashはFlash Playerが必要なので、インストールしていないPCや、スマートフォンには対応していません。 ・jQueryの欠点 jQueryはプログラミング可能なので、細かく動作を指示できますが、jQueryを使用する場合、JavaScript単体とjQuery本体の組み合わせで、ファイルは大きくなります。 ここで登場するのがCSS3。以前ならマークアップ言語で動作の指示ができるなんて思ってもみませんでした。 今回の目標 ・CSSで丸や四角などの図形を描く ・CSSで回転させる ・CSSでフェードさせる 【デモ : DEMO】 CSS3だけでアニメーション ▲こんなかんじ 今回のデモのソースコードはすべてHTML内に記述してあります。 ソースコードが長いので、ここでは解説だけを記載します。 サンプルソースコードの解説 div { position: absolute !important; top: calc(50% - 100px); left...