🚀
CSSでつまずきやすいポイントまとめ
1. opacity と rgba の違い
-
opacity
要素全体の透明度を設定。背景だけでなく文字やボーダーも含めて透明になる。
div {
opacity: 0.5; /* 要素全体が半透明になる */
}
-
rgba
色だけに透明度を設定できる。文字やボーダーを別に透明化したい場合に便利。
div {
background-color: rgba(255, 0, 0, 0.5); /* 背景色だけ半透明 */
}
2. position の基本と注意点
static
- デフォルト値
-
top,right,bottom,leftは効かない
relative
- 要素は通常の位置に表示される
-
top,right,bottom,leftで位置を調整できる
absolute
- 表示する空間(レイアウトの位置)が削除される
- 親要素に
positionが指定されていなければ、bodyに対して上下左右が決まる
fixed
- 表示する空間が削除される点は
absoluteと同じ - 表示位置は viewport を基準に決まる
sticky
- 通常は
relativeと同じ挙動 - ビューportから外れそうになると、スクロールしても画面内に残る
3. transition の使い方とベストプラクティス
a {
transition: background-color 0.3s ease-in;
}
- 変化させたい CSS プロパティだけを書くのがベスト
-
allや省略すると、ホバー時に変化させるプロパティが増えたときに意図しない挙動が起きることがある
4. img タグの改行によるホワイトスペース問題
-
imgタグを改行すると、インライン要素としてホワイトスペースが発生することがある -
flexboxを使うとホワイトスペースを気にせずレイアウトできる
.container {
display: flex;
}
Discussion