CSS基礎④

この10種類を覚えよう

ボックスモデルに関するセレクタ
ボックスモデルは(width,height, paddin,gborder,magrin, )で構成されています。

width(ボックスの横幅

  • 初期値はauto(自動計算してくれる)
  • 数値は%使うことが多い
  • 負の値は指定できない
  • HTMLのテキスト、画像(img)の適用される箇所

・デザインの都合が可能な限り「%」を使用しましょう。
・「max-width」「min-width」は便利

height(ボックスの縦幅)

  • 初期値はauto(自動計算してくれる)
  • 数値は%使うことが多い
  • 負の値は指定できない
  • HTMLのテキスト、画像(img)の適用される箇所

・デザインの都合が可能な限り「初期値」にしましょう。
・「width」と違い、「%」は使い難い

padding(境界線内側の余白

  • 上下左右まとめての指定が可能(変化したのが見た目でわかる)
  • 数値と%の指定が可能
  • 負の値は指定できない
  • CSSでbackgroudが適用される箇所

・「box-sizing: border-box;」を使えばだいたい解決するかも
・数値を入れれば絶対に余白を持ちます。(逆に効かない場合は別の何かが間違っています。)
・背景「backgroud」に画像を持たせる時に有効・余白の取り方に悩んだらpaddingで指定すると良いかも?

margin(境界線外側の余白)

  • 上下左右まとめての指定が可能(変化したのが見た目でわからない)
  • 数値と%の指定が可能
  • 負の値は指定できる
  • 色、背景など色が適用できない

・ネガティブマージン、他のセレクタとの関係性が難しい
・マージンの相殺に気を付ける(ぶつけないようにする)

border(境界線の太さ、線の種類、色)

  • 上下左右まとめての指定が可能(変化したのが見た目でわかる)
  • 数値と%の指定が可能
  • 負の値は指定できない

・初期値で「backgroud」を含む箇所だが、「box-sizing」で調整可能
(box-sizingは要素のwidthとheightに、paddingとborderのサイズを含めるかどうかを指定するCSSプロパティ)

contain-box:widthとheightにpaddingとborderのサイズを含めない
border-box:widthとheightにpaddingとborderのサイズを含める
box-sizingは全称セレクタに指定して、全要素に一括で指定するのが一般的

ボックスをレイアウトするセレクタ(float/clear/position/overflow/display)

float(横に並べる)

  • 初期値はnone
  • floatプロパティは、指定された要素を左「left」または右「right」に寄せて配置
  • ただし、左か右にしか配置出来なくなり中央に揃わなくなるその他、特殊な仕様が多々ある

・使わない時は「none」にする。(これはよく使います。)
・コーディングで一番悩ましい存在、極力使わないというのがコツかも?!
・「float」したら「clear」を徹底する
・横並びになれば、横並びの合計値になるので、ボックスの数値をしっかり把握する
・「ネガティブマージン」と合わせたら更に強力!

clear(float回り込みを解除)

  • 初期値はnone
  • 「float」プロパティの回り込みを解除する。
  • 「float」と「clear」はセットで考える

・値に「left」「right」あるが一緒なので使うなら「both」(左右全部解除)
・使わない時は「none」にする。(これはよく使います。)

position(位置の指定
表示位置の指定には「top」「bottom」「left」「right」を併用して、基準位置からの距離を設定する

  • static…数値と「%」の値、負の値が使用可能初期値
  • relative…相対位置
  • absolute…絶対位置
  • fixed…絶対位置への配置でスクロールしても位置が固定

・ヘッダーの固定や、ページトップへのボタンの固定に便利
・2つのセレクタを併用しなければならないのでややこしい
・負の値や、親子関係のがややこしい
・ややこしいが「position」が自在に使えればどんなレイアウトも自由自在
・「float」「ネガティブマージン」と合わせたら更に超強力!

overflow(収まらないコンテンツの表示方法を指定するプロパティ)

  • 初期値はvisible
  • hidden(非表示にする)
  • scroll(スクロールできるように)
  • auto(プラウザに依存した表示(多くの場合スクロールになる))

・まず「float」の親要素に「overflow: hidden;」が便利
・タッチデバイスのスクロールは操作しにくい
・初期値は「overflow: visible;」と「height:auto;」で縦長のページは、スマートフォンならOK!?

display(ボックスレイアウトの種類を指定するプロパティ)

  • inlineは(横幅の絶対値を持てない)
  • blockとinline-blockは(横幅の絶対値を持てる)
  • noneは要素が表示を隠す事が出来てしまう。

・要素の横並びの箇所(グローバルナビ等)には必須
・非表示「display :none;」の扱いには要注意
・表組「table」の解体に必要
・a要素をブロックボックスに変換してクリックしやすいように

タイトルとURLをコピーしました