CSSショートハンドとは?初心者でもわかる書き方とメリットを徹底解説
生徒
「CSSを書いていると、似たような命令がたくさん並んで、コードがすごく長くなってしまいます。もっと短く書く方法はありませんか?」
先生
「実は、複数の命令をたった一行にまとめて書く方法があるんです。それを『ショートハンド』と呼びます。」
生徒
「ショートハンド!短縮記法のことですね。具体的にはどのように使うんですか?」
先生
「それでは、初心者の方でもすぐに使える基本的な使い方とメリットを見ていきましょう!」
1. CSSショートハンドの基本と正体とは
CSS(シーエスエス)を使ってウェブサイトのデザインを整えるとき、例えば「枠線の太さ」「枠線の種類」「枠線の色」といった具合に、一つずつ細かく命令を出すことができます。 これを「個別指定」と呼びますが、命令が増えるほど文章が長くなり、後で見返したときに読みづらくなってしまいます。
そこで登場するのが「ショートハンド」です。 ショートハンドとは、日本語で「速記」を意味する言葉で、複数のプロパティ(デザインの項目)を一つのプロパティにまとめて記述する書き方のことです。 パソコンを触ったことがない方でも、「お弁当の中身を一つずつタッパーに入れるのではなく、一つの大きなお弁当箱にまとめて盛り付ける」イメージを持てば分かりやすいでしょう。 記述がシンプルになるだけでなく、入力の手間も省けるため、プロの現場でも当たり前のように使われています。
2. 枠線を一気に設定するborderのショートハンド
一番分かりやすい例が「border(ボーダー)」です。 これは要素の周りに引く「枠線」のことです。 本来であれば、太さを決める「border-width」、種類を決める「border-style」、色を決める「border-color」の三つを書く必要があります。
しかし、ショートハンドを使えば「border: 5px solid red;」のように、半角スペースで区切って並べるだけで、三つの情報を一行に詰め込むことができます。 初心者の方は、この「半角スペースで区切る」というルールを覚えておきましょう。 順番を間違えても正しく認識してくれることが多いですが、基本的には「太さ・種類・色」の順で書くのが一般的です。
<style>
.shorthand-border {
/* 太さ 種類 色 を一行で指定 */
border: 5px solid #ff5722;
padding: 10px;
}
</style>
<div class="shorthand-border">
枠線のショートハンドを使っています。
</div>
ブラウザ表示
3. 余白を一括で操るmarginとpaddingの魔法
ウェブデザインで最も頻繁に使うのが「余白」です。 外側の余白を「margin(マージン)」、内側の余白を「padding(パディング)」と言います。 これらには「上・右・下・左」の四つの方向がありますが、これもショートハンドでまとめることができます。
書き方にはルールがあります。 値を四つ並べると「上 右 下 左」の時計回りの順番になります。 値を二つだけ書くと「上下 左右」というセットになります。 もし一つだけ書けば、四方向すべてが同じサイズになります。 いちいち「margin-top(上)」や「margin-right(右)」と四回書かなくて済むので、コードが非常にスッキリします。
<style>
.shorthand-margin {
background-color: #e3f2fd;
border: 1px solid #03a9f4;
/* 上下20px、左右50pxの余白を一行で指定 */
padding: 20px 50px;
margin: 10px;
}
</style>
<div class="shorthand-margin">
余白のショートハンド(二つの値)を使っています。
</div>
ブラウザ表示
4. 背景のデザインをまとめるbackgroundの活用術
背景(background)の設定も、ショートハンドが非常に便利な項目です。 背景色(color)、背景画像(image)、画像の繰り返し設定(repeat)、表示位置(position)など、たくさんの要素を一つのプロパティにまとめられます。
例えば「background: #eee url('/img/sample150-100.jpg') no-repeat center;」と書くと、背景色を灰色にしつつ、画像を表示し、繰り返さず、真ん中に配置する、という四つの命令を同時に実行できます。 もし個別指定で書いていたら四行かかるところが一行で済むため、非常に効率的です。 ただし、画像が表示されないときのために、背景色も一緒に書いておくのがウェブ制作の優しい作法です。
5. 文字のスタイルを整えるfontの記述ルール
文字(font)についてもショートハンドが存在します。 太さ(weight)、大きさ(size)、行の高さ(line-height)、書体(family)をまとめて指定できます。
「font: bold 20px/1.5 sans-serif;」のように記述します。 ここで出てくる「/(スラッシュ)」は、文字の大きさと行の高さをセットで表すための記号です。 スラッシュの左が文字の大きさ、右が行の高さ(行間)になります。 fontのショートハンドを使うときは、「サイズと書体」を必ず含めるというルールがあるため、他のショートハンドより少しだけ注意が必要ですが、慣れると手放せない便利さがあります。
<style>
.shorthand-font {
/* 太さ サイズ/行高 書体 を一括指定 */
font: bold 24px/1.8 "Hiragino Kaku Gothic ProN", sans-serif;
color: #2c3e50;
}
</style>
<p class="shorthand-font">
フォントのショートハンドで読みやすく設定しました。
</p>
ブラウザ表示
6. ショートハンドを使うことによる三つのメリット
なぜショートハンドを使うべきなのでしょうか? 大きなメリットは三つあります。
一つ目は「コードが短くなる」ことです。 文章が短くなれば、それだけファイル全体のデータ容量が軽くなります。 結果として、ウェブサイトの読み込み速度が少しだけ速くなるという効果があります。 二つ目は「可読性が上がる」ことです。 可読性(かどくせい)とは、文字の読みやすさのことです。 一画面に表示される情報が整理されていると、修正作業もしやすくなります。 三つ目は「修正漏れが減る」ことです。 一箇所だけを書き換えれば済むため、うっかり一方向だけ直し忘れた、というミスを防ぐことができます。
7. 初心者がハマりやすい上書きの落とし穴
非常に便利なショートハンドですが、初心者が必ずと言っていいほど遭遇する「落とし穴」があります。 それは「意図しない上書き」です。
ショートハンドは、その項目に含まれるすべての値を一度に設定します。 もし、ある値を書かなかった場合、その値は「初期値(デフォルト)」に戻ってしまいます。 たとえば、以前に設定した背景画像を消したくないのに、後から「background: red;」というショートハンドを書いてしまうと、背景色だけが赤くなるのではなく、画像の設定もリセットされて消えてしまいます。 「一部だけを変更したいときは、ショートハンドではなく個別指定を使う」という使い分けが、脱・初心者の第一歩です。
8. 入力ミスを防ぐ!半角スペースと記号の注意点
プログラミング未経験の方が最も苦労するのが、キーボードでの入力です。 ショートハンドでは、複数の情報の間に必ず「半角スペース」を入れる必要があります。 これが「全角スペース」になっていたり、スペースがなかったりすると、パソコンは命令を理解できず、デザインが反映されません。
また、最後に付ける「;(セミコロン)」も忘れないようにしましょう。 これは文章の句点「。」のような役割です。 ショートハンドは情報量が多くなるため、一文字の打ち間違いが命取りになります。 「うまく表示されないな?」と思ったら、まずは全角文字が混じっていないか、スペルが間違っていないかを落ち着いて確認してみてください。
9. 学習のコツはよく使うものから少しずつ
すべてのショートハンドを一度に暗記する必要はありません。 まずは今回ご紹介した「border(枠線)」や「padding(内側余白)」など、自分がよく使うものから取り入れてみてください。
慣れてくると、複雑なアニメーションの設定などもショートハンドで書けるようになりますが、最初は無理をせず、コードをスッキリさせる楽しさを味わうことが大切です。 自分の書いたコードが綺麗にまとまっていく感覚は、パズルを解くような達成感があります。 一歩ずつ、楽しみながらウェブ制作のスキルを磨いていきましょう!
<style>
.image-card {
/* 枠線のショートハンド */
border: 2px solid #ddd;
/* 余白のショートハンド(上下左右同じ) */
padding: 15px;
/* 角丸のショートハンド */
border-radius: 20px;
width: 180px;
text-align: center;
}
.image-card img {
width: 120px;
/* 余白:上0 右、左オート 下10px */
margin: 0 auto 10px;
display: block;
}
</style>
<div class="image-card">
<img src="/img/sample120-120.jpg" alt="見本画像">
<strong>ショートハンド活用例</strong>
</div>
ブラウザ表示
【60分集中】Flexboxを完全攻略!最新CSS3で「崩れない・迷わない」モダンUI構築セミナー
「魅せる力」をコードで実現。CSS3でモダンWebデザインのプロトタイピングを。
本講座では、単に色を変えるだけではなく、「ユーザーを迷わせないUIデザイン」と「崩れないレイアウト設計」の本質を学びます。最新のCSS3とモダンなレイアウト手法を通じて、プロの現場で通用する「美しさと機能性を両立した実装力」を最短距離で習得します。
具体的なワークショップ内容と環境
【つくるもの】
HTMLで作成した骨組みに対し、商用サイトでも採用される「スタイリッシュなカード型UI」や「レスポンシブなナビゲーション」を構築します。色の選定基準や余白(ホワイトスペース)の黄金比など、デザインの理論をコードに落とし込む工程を体験してください。
【開発環境】
フロントエンド開発の標準であるVisual Studio Code (VS Code)を継続使用。CSSの記述を効率化するプラグインや、ブラウザのデベロッパーツール(検証機能)を駆使して、リアルタイムでデザインを微調整するプロのワークフローを再現します。
この60分で得られる3つの技術資産
要素の横並びや中央揃えを自由自在に操り、どんなデバイスでも崩れないレスポンシブな配置術を完全理解します。
後から修正しやすい「壊れにくいコード」の書き方を伝授。プロの現場で必須となる命名規則の考え方を学びます。
画像の最適化や軽量な装飾技法など、ページの表示速度を落とさずに高級感のある演出を行うテクニックを習得します。
※本講座は、HTMLの基礎を終えた後のステップアップ講座です。Webデザイナー、UIデザイナー、フロントエンドエンジニアへの道を切り開く「魅せる技術」を、モクモク独自のパーソナル指導で着実に定着させます。
リラックスしながら、学ぶことが大切です。しっかりと基礎を理解しましょう!
各回少人数・マンツーマン形式で徹底サポート
このセミナーの詳細・お申し込みはこちら