CSSの文字色の使い方を完全ガイド!初心者でもわかる乱数生成
生徒
「ホームページのボタンをずっとピコピコ点滅させたり、画像をループで動かしたりしたいです!」
先生
「それなら、シーエスエスのあにめーしょんプロパティを使うと、自動で動き続ける演出が作れますよ。」
生徒
「自動で動くなんて難しそうですが、パソコンを触ったことがない私でも設定できますか?」
先生
「複雑な設定を一まとめにして短く書く便利なショートハンドという方法があります。順番に学んでいきましょう!」
1. ホームページに自動的な動きを加えるアニメーション機能とは
インターネットでいろいろなホームページを見ているときに、こちらが何も操作をしていないのに、自動的にふわふわと浮き沈みしているボタンや、文字の色が次々と変わっていくような画面の演出を見かけたことはありませんか。ウェブサイトのデザインを構築するシーエスエスという言語には、このように要素を自動で動かすための仕組みが用意されています。この機能のことをあにめーしょんプロパティと呼びます。プログラミングの学習経験が全くない未経験の方や、パソコンの操作自体が初めてという完全な初心者の方であっても、基本となる記述のルールさえ覚えれば、まるでテレビ番組のテロップやゲームの画面のような楽しい動きを自分の手で作ることができるようになります。まずはこの動きを作る全体の流れを把握していきましょう。
2. 動きの台本を作成するキーフレームの役割を理解しよう
ホームページの部品を動かすためには、どのような動きをさせるかという計画書や台本のようなものが必要になります。この台本の役割を果たすのが、きーふれーむという仕組みです。専門的な言葉では@keyframesと記述します。この台本の中に、動きが始まった最初の状態、途中の状態、そして終わりの状態のときに、文字の色やボタンの大きさをどう変化させるかを細かく書き込んでいきます。例えば、最初は透明で見えなかった文字が、中間でハッキリと表示され、最後にまた消えていくというような一連の流れをパーセントという単位を使って時間軸に沿って組み立てます。この台本を用意した上で、動かしたい対象の要素に名前を紐づけることで、初めて画面の中で文字や画像が生き生きと動き出すようになります。
3. ショートハンドを使って複数の命令を一行にまとめる方法
アニメーションを正しく動かすためには、たくさんの設定項目をコンピューターに伝える必要があります。具体的には、使用する台本の名前、一回動き終えるまでにかかる時間、動きの加速や減速のタイミング、動きが始まるまでの待ち時間、動きを繰り返す回数、動きを往復させるかどうかの方向などがあります。これらをすべて別の行に一つずつ書いていくと、プログラムの分量が非常に多くなってしまい、画面が文字で埋め尽くされてしまいます。そこで役に立つのが、複数の設定項目をスペースで区切りながら一行に書き並べるショートハンドという一括指定の方法です。一括指定を使うことで、プログラムが劇的に短くなり、見た目もスッキリとして読みやすくなるため、記述の間違いを見つけやすくなるという初心者に嬉しい利点があります。
<style>
@keyframes pulse {
0% {
transform: scale(1);
}
50% {
transform: scale(1.1);
}
100% {
transform: scale(1);
}
}
.badge-pulse {
display: inline-block;
padding: 10px 20px;
background: #dc3545;
color: #ffffff;
animation: pulse 2s infinite;
}
</style>
<div class="badge-pulse">
<span>注目!注目!</span>
</div>
ブラウザ表示
4. 一括指定の構文における記述の順番と注意点
ショートハンドで複数の要素を並べるときには、基本的な並び順の約束事があります。最も一般的な記述の順番は、まず最初に台本の名前を指定し、その次に一回の動きにかかる時間を指定します。続いて、動きの緩急のつけ方、動き出すまでの遅延時間、繰り返す回数の順番で書き足していきます。それぞれの単語や数値の間には、必ずキーボードの半角モードを使って空白スペースを一つずつ空けなければなりません。もし二つの異なる時間を記述する場合は、最初に書いた時間がアニメーションの動く時間として認識され、二番目に書いた時間が動き出すまでの待ち時間として認識されるという絶対的なルールがあります。この規則性を正しく守ることで、ホームページを表示するブラウザが困ることなく命令を実行できるようになります。
<style>
@keyframes color-change {
0% {
background: #007bff;
}
100% {
background: #28a745;
}
}
.box-change {
width: 200px;
padding: 20px;
color: #ffffff;
animation: color-change 3s linear 1s infinite alternate;
}
</style>
<div class="box-change">
<p>一秒後に動き出し、三秒かけて色が交互に変わります。</p>
</div>
ブラウザ表示
5. 繰り返しの回数と動きの方向をコントロールする設定
アニメーションの魅力を引き出すために欠かせないのが、動きの繰り返しに関する設定です。初期設定のままでは、アニメーションは一回動いただけで完全に停止してしまいます。ずっと動かし続けたい場合には、インフィニティという永遠を意味する特別な言葉を指定します。これにより、ホームページを閉じない限り、その動きがずっとループするようになります。また、回数を数字で指定することも可能で、三回だけ動かしたいときは数字の3を記述します。さらに、一方向の動きだけでなく、行きと帰りの動きを滑らかに往復させたいときには、オルタネイトという設定を追加します。これらを組み合わせることで、心臓の鼓動のようなバウンドする動きや、左右に揺れ続ける振り子のような自然な演出が作れるようになります。
<style>
@keyframes slide-right {
0% {
margin-left: 0px;
}
100% {
margin-left: 100px;
}
}
.box-slide {
width: 150px;
padding: 15px;
background: #ffc107;
color: #000000;
animation: slide-right 1.5s ease-in-out infinite alternate;
}
</style>
<div class="box-slide">
<p>左右に往復します。</p>
</div>
ブラウザ表示
6. ウェブデザインにおけるアニメーション効果の適切な使いどころ
自動で動くアニメーションは非常に目立つため、ホームページの中での使いどころをしっかりと見極める必要があります。最も効果的な使いどころは、ユーザーに最もクリックしてほしいお問い合わせボタンや、今だけ限定の割引クーポン情報など、視線を一瞬で集めたい重要なエリアです。そこに対して、ほんの少しだけ震えるような動きや、光が通り抜けるような輝きの効果を与えることで、操作を促すことができます。しかし、画面内のすべての文字や画像が別々にバラバラに動き回ってしまうと、どこを読めばいいのか分からなくなり、非常に目が疲れる見づらいウェブサイトになってしまいます。大切なのは全体のバランスを考え、本当に強調したい部分だけに絞って上品に取り入れることです。
7. 初心者が最も間違いやすい半角と全角スペースのトラブル
パソコンの操作にあまり慣れていない未経験の方がプログラミングのコードを書く際、最も頻繁に遭遇するトラブルが、文字の入力モードのミスです。命令文を一括指定で並べるときに空ける空白スペースは、必ずキーボードが半角の英数字入力の状態になっていなければなりません。日本語を入力する全角の状態で空白を空けてしまうと、画面上では同じように隙間が空いているように見えても、コンピューターにとっては全く意味の分からない文字として認識されてしまいます。その結果、記述が正しく伝わらずにアニメーションがピクリとも動かなくなってしまいます。文字の色や動きが反映されないときは、まず入力した文字や隙間がすべて半角になっているかを真っ先にチェックするようにしましょう。
8. システム開発で使われる乱数生成と画面表現の組み合わせ
ここで少し応用的な仕組みとして、プログラムの世界で重要な役割を持つ乱数生成という技術についても知っておきましょう。乱数とは、サイコロを転がして出る目のように、規則性がなく次に何が出るか予測できないバラバラの数字のことです。そして生成とは新しく作り出すことを意味します。このランダムな数字を作り出す仕組みと、これまでに学んだシーエスエスのアニメーションの技術を掛け合わせることで、ホームページの表現力が飛躍的に高まります。例えば、ページを開くたびにボタンが動くスピードをランダムに変えたり、星が瞬くようなアニメーションの待ち時間を個別に変化させて夜空のリアルな輝きを再現したりすることができます。基礎を固めた先には、こうした面白い開発の世界が待っています。
【60分集中】Flexboxを完全攻略!最新CSS3で「崩れない・迷わない」モダンUI構築セミナー
「魅せる力」をコードで実現。CSS3でモダンWebデザインのプロトタイピングを。
本講座では、単に色を変えるだけではなく、「ユーザーを迷わせないUIデザイン」と「崩れないレイアウト設計」の本質を学びます。最新のCSS3とモダンなレイアウト手法を通じて、プロの現場で通用する「美しさと機能性を両立した実装力」を最短距離で習得します。
具体的なワークショップ内容と環境
【つくるもの】
HTMLで作成した骨組みに対し、商用サイトでも採用される「スタイリッシュなカード型UI」や「レスポンシブなナビゲーション」を構築します。色の選定基準や余白(ホワイトスペース)の黄金比など、デザインの理論をコードに落とし込む工程を体験してください。
【開発環境】
フロントエンド開発の標準であるVisual Studio Code (VS Code)を継続使用。CSSの記述を効率化するプラグインや、ブラウザのデベロッパーツール(検証機能)を駆使して、リアルタイムでデザインを微調整するプロのワークフローを再現します。
この60分で得られる3つの技術資産
要素の横並びや中央揃えを自由自在に操り、どんなデバイスでも崩れないレスポンシブな配置術を完全理解します。
後から修正しやすい「壊れにくいコード」の書き方を伝授。プロの現場で必須となる命名規則の考え方を学びます。
画像の最適化や軽量な装飾技法など、ページの表示速度を落とさずに高級感のある演出を行うテクニックを習得します。
※本講座は、HTMLの基礎を終えた後のステップアップ講座です。Webデザイナー、UIデザイナー、フロントエンドエンジニアへの道を切り開く「魅せる技術」を、モクモク独自のパーソナル指導で着実に定着させます。
リラックスしながら、学ぶことが大切です。しっかりと基礎を理解しましょう!
各回少人数・マンツーマン形式で徹底サポート
このセミナーの詳細・お申し込みはこちら