プログラミング

HTML・CSS入門② 色・余白・横並びを整えよう

CSSの基本的な書き方と、色・余白・カード・横並びを使った見た目の整え方を解説します。

HTMLで内容を作ったら、CSSで色や余白を整えます。

CSSは飾り付けだけでなく、読みやすい順番や配置を作るためにも使われます。まだHTMLを書いたことがなければ、先にHTML入門①を読んでください。

CSSの3つの部分

CSSは「どの要素を」「何を」「どうするか」の順で書きます。

p {
  color: #333333;
}

pは対象を選ぶセレクターcolorは変更する項目であるプロパティ#333333は設定するです。

CSSファイルを読み込む

HTMLと同じフォルダーにstyle.cssを作ります。続いて、HTMLのhead内へ次の1行を追加します。

<link rel="stylesheet" href="style.css" />

hrefのファイル名と実際の名前が一致していれば、CSSが読み込まれます。

文字と背景を整える

style.cssに次の内容を書きます。

body {
  margin: 0;
  background: #f7f7f5;
  color: #202020;
  font-family: sans-serif;
  line-height: 1.8;
}

main {
  width: min(90%, 720px);
  margin: 48px auto;
}

line-heightは行の高さです。margin: 48px autoautoは、左右の空きを自動計算して中央へ置く指定です。

HTMLの本文はmainで囲みます。

<main>
  <h1>プログラミング学習ノート</h1>
  <p>今日覚えたことを記録するページです。</p>
</main>

カードを作る

複数の情報を区切りたいときは、クラス名を付けます。

<section class="card">
  <h2>今日の記録</h2>
  <p>HTMLの見出しと文章を覚えました。</p>
</section>
.card {
  padding: 24px;
  border: 1px solid #dddddd;
  border-radius: 12px;
  background: #ffffff;
}

paddingは枠の内側、marginは枠の外側の余白です。このように内容・内側の余白・枠線・外側の余白を考える仕組みをボックスモデルと呼びます。

横並びにはFlexboxを使う

カードを横へ並べたいときは、親要素へdisplay: flexを設定します。

.card-list {
  display: flex;
  gap: 16px;
}

gapは要素同士の間隔です。画面が狭いときの調整は、次のスマホ対応の記事で扱います。

練習:リンクをボタン風にする

class="button"を付けたリンクへ、背景色と余白を設定してみましょう。

模範解答

.button {
  display: inline-block;
  padding: 10px 18px;
  border-radius: 8px;
  background: #277a43;
  color: #ffffff;
  text-decoration: none;
}

解説

inline-blockにすると、リンクへ上下の余白を付けやすくなります。文字色と背景色には十分な差を付け、読めることを優先しましょう。

CSSの役割をさらに確認したい場合は、MDNのCSS入門が参考になります。

← 記事一覧へ戻る