諸々最初に設定

1. cssをreset

各タグに個別対応する手間を省き、表現を一元化
A (more) Modern CSS Resetを改造して「reset.css」を先頭に設置、あるいはcssファイルの先頭に配置
Header内に<link href=”reset.css” rel=”stylesheet” />と記述

入れておくと便利なCSSセレクタ

2. @media


スタイルシートを適用する条件を指定。pc / tablet / smartphoneで区分け

480pxより小さい
@media screen and (max-width: 480px) {}

737pxより大きい
@media print,screen and (min-width: 737px) {}

481px〜768px
@media screen and (min-width: 481px) and (max-width: 768px) {}
@media screen and (481px〜768px < =width < 768px) {}

ホバーアクションがある場合
@media (any-hover: hover) {}

3. リンク

通常下線はこんな感じ

a.d1 {
  color: red !important;
}

文字につけたくない場合はこんな感じ

a.d2 {
  text-decoration-color: purple;
  text-decoration-line: underline;
  text-underline-offset: 5px;
}

4. image

レスポンシブ切り替え

viewprot あるいは container レイアウトにおける pc / tablet / smart phoneの変更
.tabletは状況によって.spとまとめる

.pc {
  display: inline-block;
}

.sp, .tablet {
  display: none;
}

@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }

  .sp {
    display: inline-block;
  }
}

@media screen and (max-width: 435px) {
  .tablet {
    display: inline-block;
  }
}

画像サイズを100%に
baseで設定

vertical-align: bottom;
画像の下にできる隙間を隙間を防ぐ

img{
  max-width: 100%;
  heigth: auto;
  border: none;
  vertical-align: bottom;
}

picture要素

1280px以上でdummy-c.jpg
768px以上でdummy-b.jpg
上記以外でdummy-a.jpg

サイズだけではなくsvgなどの種類にも対応

<picture>
  <source srcset="dummy-c.jpg" media="(min-width: 1280px)" />
  <source srcset="dummy-b.jpg" media="(min-width: 768px)" />
  <img src="dummy-a.jpg" alt="代替テキスト" />
</picture>
<picture>
  <source srcset="dummy.svg" type="image/svg+xml" />
  <source srcset="dummy.png" type="image/png" />
  <img src="dummy.gif" alt="代替テキスト" />
</picture>
代替テキスト

イメージ均一化

サイズの違うイメージを16 : 9で均一
親 : display: grid;
grid-template-columns: repeat(3, 1fr);

.sam21 img {
  aspect-ratio: 16 / 9;
  width: 100%;
  object-fit: contain;
}

transformプロパティ独立した書き方

※ skew はプロパティ無し

.hoge1 {
  transform: translateY(10px) rotate(90deg) scale(1.1);
}
.hoge2 {
  transform: translateY(100%) scaleX(1.1) scaleY(1.2);
}

 ↓

.hoge1 {
  translate: 0 10px;
  rotate: 90deg;
  scale: 1.1;
}
.hoge2 {
  translate: 0 100%;
  scale: 1.1 1;
  scale: 1 1.2;
}
CSS

次の記事

設定:セレクター