HTML 構造
Page Title

Hello World

共通要素
テキストと見出し

Heading 1

...
Heading 6

Paragraph text

Bold Italic

リンクと画像
Link text #section">Anchor link Description
リスト
  1. First
フォーム
入力タイプ
セレクトとテキストエリア
セマンティック HTML
<header>イントロコンテンツまたはナビゲーションコンテナ
<nav>ナビゲーションリンク
<main>ページのメインコンテンツ(1ページに1つ)
<section>テーマ別コンテンツのグループ
<article>独立したコンテンツ
<aside>サイドバーまたは補足コンテンツ
<footer>セクションまたはページのフッター
<figure>キャプション付きの画像や図
<figcaption>
のキャプション
CSS セレクター
基本セレクター
elementp { } — すべての

要素

.class.card { } — クラスセレクター
#id#main { } — ID セレクター
*ユニバーサルセレクター(すべての要素)
結合子
A B子孫(A の内側の B)
A > B直接の子要素のみ
A + B隣接兄弟(A の直後の B)
A ~ B一般兄弟(A より後の B)
疑似クラス
:hover要素上にマウスがある
:focus要素がフォーカスを持つ
:first-child親の最初の子要素
:nth-child(n)n番目の子(2n = 偶数、odd = 奇数)
ボックスモデル
.box { margin: 10px; /* outside */ border: 1px solid #333; /* edge */ padding: 15px; /* inside */ width: 200px; box-sizing: border-box; /* include pad+border */ }
ショートハンド
margin: 10px全辺
margin: 10px 20px上下 | 左右
margin: 10px 20px 15px上 | 左右 | 下
margin: 10px 20px 15px 5px上 | 右 | 下 | 左
フレックスボックス
コンテナ
.flex-container { display: flex; flex-direction: row; /* row | column */ justify-content: center; /* main axis */ align-items: center; /* cross axis */ gap: 10px; flex-wrap: wrap; }
アイテムプロパティ
flex: 1利用可能なスペースを埋めるように伸長
flex-grow: 2兄弟要素に対する伸長比率
flex-shrink: 0基準サイズ以下に縮小しない
flex-basis: 200px伸縮前の初期サイズ
align-self: flex-endコンテナの配置をオーバーライド
order: -1表示順序(デフォルト 0)
グリッド
コンテナ
.grid { display: grid; grid-template-columns: 1fr 2fr 1fr; grid-template-rows: auto; gap: 10px; }
アイテム配置
.item { grid-column: 1 / 3; /* span col 1-2 */ grid-row: 1 / 2; } /* shorthand: repeat, minmax */ grid-template-columns: repeat(3, 1fr); grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
ポジション
staticデフォルトフロー(オフセットプロパティなし)
relative通常位置からのオフセット
absolute最も近い位置指定の祖先からのオフセット
fixedビューポートからのオフセット(スクロールしても固定)
stickyスクロール閾値まで relative、それ以降は fixed
.parent { position: relative; } .child { position: absolute; top: 0; right: 0; /* top-right corner */ }
メディアクエリ
/* Mobile-first: base styles for small screens */ .container { padding: 10px; } @media (min-width: 768px) { .container { max-width: 720px; } } @media (min-width: 1024px) { .container { max-width: 960px; } }
一般的なブレークポイント
480px小型スマートフォン
768pxタブレット
1024px小型デスクトップ / 横向きタブレット
1280pxデスクトップ