CSSの基礎知識まとめ

2023-07-28 11:07:01

PHP値変換strval()、intval()、floatval()、bool jsのindexOfメソッド

目次

  1. CSS の概要
    1. CSSとは何ですか?
    2. CSSインポート方法
  2. CSSセレクター
    1. CSS基本セレクター
      1. IDセレクター
      2. クラスセレクター
      3. ワイルドカードセレクター
      4. ラベルセレクター
      5. 属性セレクター
    2. 結合セレクター
    3. 疑似クラスセレクター
    4. 擬似要素セレクター
    5. 疑似クラスと疑似要素の違い
  3. フォントとテキストスタイル
    1. フォントスタイル
    2. テキストスタイル
  4. 背景関連の属性
    1. 背景色
    2. 背景画像
    3. 背景のタイリング
    4. 背景の位置
    5. imgタグと背景画像の違い
  5. 要素の表示モード
    1. ブロックレベルの要素
    2. インライン要素
    3. インラインブロック要素グ
  6. CSSの3大特徴
    1. 継承
    2. カスケード
    3. 優先順位
  7. ボックスモデル
    1. ボックスモデルの概要
      1. コンテンツの幅と高さ
      2. 境界線(border)
      3. パディング(padding)
      4. マージン(margin)
      5. 実際のボックスサイズの計算式
      6. 隣接するボックス間のマージン計算ルール
      7. コラプス現象
  8. 標準フロー
  9. フロート
    1. フローティングの特性
    2. フローティングの役割
    3. フローティングコード位
    4. フローティングの影響
    5. 浮き上がりの解消方法
  10. BFC
    1. BFC の概要
    2. BFCの作成方法
    3. BFCボックスの特徴
  11. 位置決め
    1. ポジショニングアプリケーションシナリオ
    2. 位置決めを使用する手順
      1. 測位方法を設定する
      2. オフセット値の設定
    3. 位置決め方法
      1. 静的位置決め
      2. 相対位置決め
      3. 絶対位置決め
      4. 固定位置
  12. 要素階層 (z-index)
    1. 要素の階層
    2. 階層を変更する方法
  13. 装飾
    1. ベースライン
    2. テキストの配置
    3. カーソルの種類
    4. 境界線の丸い角
    5. overflow
    6. 要素の非表示
    7. 要素の透明性

1. CSS の概要

1.1. CSSとは何ですか?

  • CSS はカスケード スタイル シートを指します
  • CSS は、画面、紙、その他のメディア上に HTML 要素を表示する方法を記述します。
  • CSS は多くの作業を節約します。複数の Web ページ レイアウトを同時に制御できます。

1.2、CSSインポート方法

インポート方法 筆記位置 行動範囲 使用するシーン
埋め込み CSSはstyleタグ内に記述します。styleタグは通常head内に置かれます 現在のページ 小さなケース
アウトリーチ CSS は別の CSS ファイルに記述され、link タグを通じてインポートされます。 複数のページ 計画
列をなして CSSはタグのstyle属性に記述します。 現在のタブ jsで使う

2.CSSセレクター

2.1、CSS基本セレクター

2.1.1 IDセレクター
  • 構造#id 属性値{ css 属性名: 属性値; }
  • 機能: id 属性値を通じて、ページ内でこの id 属性値を持つラベルを検索し、スタイルを設定します

気をつけて:

  1. すべてのタグの id 属性
  2. id 属性値は ID 番号に似ており、ページ内で一意で反復不可能です。
  3. タグには id 属性値を 1 つだけ指定できます
  4. ID セレクターはタグを 1 つだけ選択できます
2.1.2 クラスセレクター
  • 構造.class { css 属性名: 属性値; }
  • 機能: クラス名を通じて、ページ内でこのクラス名を持つすべてのタグを検索し、スタイルを設定します。

気をつけて:

  1. すべてのタグにclass属性があり、class属性の属性値がクラス名になります。
  2. クラス名は数字、文字、アンダースコア、ダッシュで構成できますが、数字やダッシュで始めることはできません
  3. ラベルには同時に複数のクラス名を含めることができ、クラス名はスペースで区切られます。
  4. クラス名は繰り返すことができ、クラス セレクターは複数のタグを同時に選択できます。
2.1.3 ワイルドカードセレクター
  • 構造*{ CSS 属性名: 属性値; }
  • 機能: ページ内のすべてのタグを検索し、スタイルを設定します。

注:デフォルトでは、ブラウザー独自の属性 margin および Padding は削除されます。。

2.1.4 ラベルセレクター
  • 構造: タグ名 { CSS 属性名: 属性値; }
  • 機能: タグ名を通じて、ページ内のそのようなタグをすべて検索し、スタイルを設定します。

気をつけて:

  1. ラベル セレクターは、単一のラベルではなく、ラベルの種類を選択します。
  2. ラベル セレクターは、ネスト関係がどれほど深くても、対応するラベルを見つけることができます。
2.1.5 属性セレクター
属性 説明する
[attribute] attribute属性を持つ複数の要素を選択します
[attribute=value] attribute=valueすべての要素が選択されました
[attribute~=value] 属性に単語がattribute含まれるすべての要素を選択します value
[attribute^=value]] 属性値valueが で始まるすべての要素を選択します。
[attribute$=value] 属性の属性値が で終わるvalueすべての要素を選択します。
[attribute*=value] value属性属性に部分文字列が含まれるすべての要素を選択します
  • 構造: タグ名 { CSS 属性名: 属性値; }
  • 機能: タグ名を通じて、ページ内のそのようなタグをすべて検索し、スタイルを設定します。

気をつけて:

  1. ラベル セレクターは、単一のラベルではなく、ラベルの種類を選択します。
  2. ラベル セレクターは、ネスト関係がどれほど深くても、対応するラベルを見つけることができます。

2.2. 結合セレクター

セレクタ 効果 フォーマット
子孫セレクター 子孫を見つける セレクターはスペースで区切られます .father .son { css }
子セレクター 息子を探しています セレクターは次のように>区切られます。 .father > .son { css }
ユニオンセレクター 複数のカテゴリの要素を見つける セレクターは次のように,区切られます。 div,p,span { css }
交差点セレクター 複数のセレクターを同時に満たす要素を検索する セレクターの横にある p.red { css }
兄弟セレクター p タグの後のすべてのspan要素と一致します。 セレクターは次のように~区切られます。 p ~ span
隣接セレクター pタグの最初のspan要素と一致します。 セレクターは次のように+区切られます。 p + span

2.3. 疑似クラスセレクター

疑似クラス: 新しい要素を生成せずに、特定のセレクターに特殊効果を追加します。

セレクタ 機能説明
E:first-child 親要素の最初の子である要素 E
E:last-child 親要素の最後の子である要素 E
E:nth-child(n) 親要素の n 番目の子要素 ​​E として
E:nth-last-child(n) 親要素の最後の n 番目の子要素を選択します
E:first-of-type 親要素内の指定されたタイプの最初の E 要素を選択します
E:last-of-type 親要素内の指定されたタイプの最後の要素を選択します
E:nth-of-type(n) 親要素内の指定されたタイプの n 番目の E 要素を選択します
E:nth-last-of-type 親要素内の指定された型の最後の n 番目の E 要素を選択します
E:root 一致する要素 E が存在するドキュメントのルート要素、つまり html を選択します。
E:only-child 親要素に子要素が 1 つだけ含まれており、子要素が E 要素と一致することを選択します。
E:only-of-type 同じタイプの子要素を 1 つだけ含むように親要素を選択し、その子要素が E 要素と一致するようにします。
E:empty 子を持たず、テキスト ノードも含まない要素を選択します。
E:link 未訪問のリンクをすべて選択します
E:active アクティブな状態のリンク要素を選択します
E:visited すでに訪問した要素を選択してください
E:hover マウスオーバー状態で要素を選択します
E:checked 選択された<input type="checkbox" checked>要素

2.4. 擬似要素セレクター

擬似要素: content 要素の前後に追加の要素またはスタイルを挿入します。これらの要素は HTML ドキュメント内では生成されず、外部からのみ表示されます。

セレクタ 機能説明
::before 選択した要素の前に配置する疑似要素を作成します
::after 選択した要素の後に配置する疑似要素を作成します
::first-letter さまざまな要素の最初の行の最初の文字を選択します
::first-line 選択した要素の最初の行
::selection マウスをクリックしてドラッグして、ハイライトされた部分を選択します

2.5、疑似クラスと疑似要素の違い

  1. 疑似要素はセレクター内で 1 回だけ、最後にのみ出現できます。
  2. 疑似クラスはスタイルを設定するだけであり、新しい要素は作成しません。擬似要素は新しい要素を作成します
  3. 擬似クラスの効果は実際のクラスを追加することで実現でき、擬似要素は要素を追加することによっても実現できます。

3. フォントとテキストスタイル

3.1. フォントスタイル

属性名 スタイル 属性値
font-size フォントサイズ 数値+px
font-weight フォントの太さ 標準: Normal または数値 400; 太字: bold または数値 700
font-style 傾けるかどうか 通常 (デフォルト): normal; 斜め: italic
font-family フォントファミリー sans-serif (サンセリフ フォント); serif (セリフ フォント); monospace (等幅フォント)
font リテラルフォント style weight size family

3.2. テキストスタイル

属性名 スタイル 属性値
text-indent テキストのインデント 数値+px; 数値+em (推奨: 1em = 現在のラベルの font-size)
text-align アライメント left: 左揃え、center: 中央揃え、right: 右揃え
text-decoration 文字装飾 underline:下線、 line-through:行削除、overline:上の線、none:飾り線なし
line-height テキスト行の高さ 数値+px; 倍数 (現在のタグの font-size の倍数)

4. 背景関連の属性

4.1. 背景色

属性名:background-color

属性値:

色の値
キーワード red、green、yellowなど。
RGB表現 RGB(255,255,255)
rgba表現 rgba(255,255,255,1)
16進数 #ffffff;

気をつけて:

  • 背景色はデフォルトで透明です: rgba(0,0,0,0) または透明
  • 背景色はボックスのサイズには影響しません。通常、レイアウトで使用され、ボックスのサイズと位置を確認するのに便利です。

4.2. 背景画像

属性名:background-image

属性値:background-image:url('画像のパス')

気をつけて:

  • 背景画像はデフォルトで水平方向と垂直方向に並べて表示されます
  • 背景画像は、箱を開けることができない背景と同様に、箱に装飾効果を与えることを意味します。

4.3. 背景のタイリング

属性名:background-repeat

属性値:

価値 効果
repeat (デフォルト) 水平方向と垂直方向の両方に並べて表示します
no-repeat タイル張りではない
repeat-x 水平方向 (x 軸) に沿って並べて表示します。
repeat-y 垂直方向 (y 軸) に沿って並べて表示します

4.4. 背景の位置

属性名:background-position

属性値:background-position:水平位置と垂直位置

4.5. imgタグと背景画像の違い

  • imgタグは幅と高さを設定しないとデフォルトでオリジナルサイズで表示されるタグです
  • 背景画像は単なる装飾的な CSS スタイルであり、要素の幅と高さを拡張することはできません

5. 要素の表示モード

5.1. ブロックレベルの要素

属性: display::block
機能:

  1. 行内排他(1行のみ表示可能)
  2. デフォルトの幅は親要素の幅であり、高さはデフォルトでコンテンツによって拡張されます。
  3. 幅と高さを設定できます

代表レーベル

  • div、p、h、ul、li、dl、dt、dd、form、header、nav、footer...

5.2. インライン要素

属性: display:inline
機能:

  1. 1 行に複数を表示できます
  2. 幅と高さはデフォルトでコンテンツによって拡張されます
  3. 幅と高さは設定できません

代表レーベル

  • a、span、b、u、i、s、strong、ins、em、del など。

5.3. インラインブロック要素

属性: display: inline-block
機能:

  1. 1 行に複数を表示できます
  2. 幅と高さを設定できます

代表レーベル

  • input、textarea、button、select...
  • 特殊なケース: imgタグはインライン ブロック要素の特性を持っていますが、Google Chrome ではインラインとして表示されます。

6. CSSの3大特徴

6.1. 継承

特徴:子要素はデフォルトで親要素のスタイルを継承する特徴があります(子は父親の事業を継承します)

継承されたプロパティ:

  1. color
  2. font-style、font-weight、font-size、font-family
  3. text-indent、text-align
  4. line-height

アプリケーションシナリオ:

  1. list-style:none 属性を ul に直接設定して、リストのデフォルトのドット スタイルを削除できます。
  2. 異なるブラウザのデフォルトの文字サイズを統一するために、bodyタグに統一フォントサイズを直接設定します。

継承の失敗: ブラウザのデフォルトのスタイルによって上書きされます

6.2、カスケード

特徴:

  1. 同じラベルに異なるスタイルを設定 -> このとき、スタイルは積み重ねられて重ねられます -> ラベル上で連携して機能します
  2. 同じラベルに同じスタイルを設定 -> このとき、スタイルはカスケードされて上書きされます -> 最後に書かれた最終的なスタイルが有効になります
  3. スタイルが競合する場合、セレクターの優先順位が同じ場合にのみ、カスケード判定を通過できます。

6.3. 優先順位

セレクタ 重み
!important background-color: #fff !important; 正の無限大
インラインセレクター <span style='color: #333;'>スタイル効果要素</span> 1000
IDセレクター #id 100
クラスセレクター、属性セレクター、疑似クラスセレクター .class 10
ラベルセレクター、擬似要素セレクター div、p 1
ワイルドカードセレクター * 0
継承されたプロパティ <div style='color:#333;'><span>スタイル効果要素</span></div> -1

説明する

  1. 重量値は 256 の 16 進数です。
  2. 同じ行にあるセレクターのウェイト値が加算され、ウェイト値の高いスタイルが有効になり、ウェイト値が同じ場合は、後から書き込まれたスタイルが上書きされます。
  3. 同じ行にない場合、直接検索は重み値を加算して計算され、重み値の高いスタイルが有効になります。

7.ボックスモデル

7.1. ボックスモデルの概要

ボックスのコンセプト:

  1. ページ内の各ラベルはボックスと見なすことができ、ボックスの観点からレイアウトをより便利に行うことができます。
  2. ブラウザは Web ページをレンダリングするときに、Web ページ内の要素をボックスとも呼ばれる長方形の領域と見なします。

ボックスモデル: CSS では、ボックスがコンテンツ領域 (content)内側のマージン領域 (padding)境界領域 (border)、および外側のマージン領域 (margin)で構成されると規定しています。

7.1.1 コンテンツの幅と高さ

役割width 属性height属性を使用して、デフォルト設定をボックスのコンテンツ領域のサイズに設定します

属性: width / height

一般的な値: 数値 + px

7.1.2 境界線(border)

機能: 枠線の太さ、枠線のスタイル、枠線の色の効果を設定

プロパティ:

効果 属性名 属性値
境界線の太さ border-width 数値 + px
ボーダースタイル border-style 実線solid、破線dashed、点線dotted
ボーダの色 border-color 色の値

枠線の書き方:枠線の太さ、枠線のスタイル、枠線の色

: border: 1px solid #333;

一方向設定: border-top: 1px solid red;

7.1.3 パディング(padding)

機能:境界線コンテンツ領域の間の距離を設定します

属性名: padding

共通の値:

価値 意味
価値 padding: 10px; 上下左右を10pxに設定
2つの値 padding: 10px 20px; 上下を10px、左右を20pxに設定
3つの価値観 padding: 10px 20px 30px が10px、左右が20px、が30pxに設定されています
4つの値 padding: 10px 20px 30px 40px が10px、が20px、が30px、左が40pxに設定されています

単一方向設定: padding-top: 10px;

7.1.4 マージン(margin)

機能: ボックスと境界線の外側のボックス間の距離を設定します

属性名:margin

共通の値:

価値 意味
価値 margin: 10px; 上下左右を10pxに設定
2つの値 margin: 10px 20px; 上下を10px、左右を20pxに設定
3つの価値観 margin: 10ピクセル 20ピクセル 30ピクセル が10px、左右が20px、が30pxに設定されています
4つの値 margin: 10px 20px 30px 40px が10px、が20px、が30px、左が40pxに設定されています

一方向設定: margin-top: 10px;

7.1.5 実際のボックスサイズの計算式
  • ボックスの幅 = 左の境界線 + 左のpadding + コンテンツの幅 + 右のpadding + 右の境界線
  • ボックスの高さ = 上の境界線 + 上のpadding + コンテンツの幅 + 下のpadding + 下の境界線

質問: ボックスがボーダーとパディングによって拡張される場合の問題を解決するにはどうすればよいですか?

  1. 手動減算: 超過サイズを手動で計算し、コンテンツから減算します。
  2. 自動内部縮小: ボックスのプロパティ box-sizing: border-box を設定します。
7.1.6 隣接するボックス間のマージン計算ルール
  1. 水平方向のボックス、2 つの間の距離は margin の合計です。
  2. 垂直方向のボックス、2 つの間の距離が margin の最大値です
7.1.7 コラプス現象

シナリオ: 相互ネスト要素とブロックレベル要素。子要素の magin-top が親要素に作用します。

結果: 親要素が一緒に下に移動し、親要素が折りたたまれます。

解決策:

  1. 親要素のborder-topまたはpadding-topを設定します(親要素と子要素を分割するmargin-top)。
  2. overflow:hidden を親要素に設定します。
  3. インラインブロックレベル要素に変換します。 display: inline-block;
  4. フロートを設定します。 float: left;
  5. 疑似クラスを追加する

float をクリアし、親要素を折りたたむために一般的に使用される疑似クラス:

.clearfix::before,
.clearfix::after {
    content: "";
    display: table;
}
.clearfix::after {
    clear: both;
}

8. 標準フロー

標準フロー:ドキュメント フローとも呼ばれ、要素をレンダリングするときにブラウザーがデフォルトで採用する一連のレイアウト ルールであり、要素の配置方法を指定します。

植字規則:

  1. ブロックレベル要素:上から下へ、縦レイアウト、専用線
  2. インライン要素またはインラインブロック要素: 左から右、水平レイアウト、十分なスペースがない場合は自動行折り返し

9.フロート

9.1、フローティングの特性

  1. 浮遊要素は標準流量(略称:適応外)から外れ、標準流量の位置を占めません。
  2. フローティングエレメントは標準フローより半分レベル上にあり、標準フロー内のエレメントをカバーできます。
  3. フローティングを見つけてフローティングすると、次のフローティング要素は前のフローティング要素の後ろで左右にフローティングします。
  4. フローティング要素は、上記のブロックレベル要素の境界の影響を受けます。
  5. フローティング要素には特別な表示効果があります
  • 1 行に複数を表示できます
  • 幅と高さを設定できます

注:フローティング要素は、親要素を通じて text-align:center を設定したり、margin: 0 auto; を設定したりして、フローティング要素自体が水平方向に中央揃えになるようにすることはできません。

9.2、フローティングの役割

  1. グラフィックサラウンド
  2. Web ページのレイアウト、垂直レイアウト ボックスを水平レイアウトにします

9.3、フローティングコード

属性:float

  1. フロート左: float: left;;
  2. 右フロート: float: right;

9.4、フローティングの影響

影響: 子要素はフロートに設定されています。現時点では、子要素は標準フローから外れており、親要素を展開できません。これは、ページ上の他の要素のレイアウトに影響します。

9.5. 浮き上がりの解消方法

  1. 親要素の高さを直接設定する
  • 利点: シンプルかつ直接的、便利
  • 欠点: 一部の要素には高さが固定されておらず、高さを設定できません
  1. 親要素のコンテンツの最後にブロックレベル要素を追加し、そのブロックレベル要素に属性clear:both;を追加します。
  • デメリット: ページに追加のタグが追加されるため、ページ構造が複雑になり、読みにくくなります。
  1. 単一の疑似要素の削除方法

基本的な書き方

.clearfix::after {
    content: "";
    display: block;
    clear: both;
}

補足

.clearfix::after {
    content: "";
    display: block;
    clear: both;
    /* 疑似要素は Web ページに表示されません */
    height: 0;
    visibility: hidden;
}
  • 利点: ラベルにクラスを直接追加すると、フローティングをクリアできます。
  1. 二重擬似要素除去法

     

    .clearfix::before,
    .clearfix::after {
    content: “”;
    display: table;
    }
    .clearfix::after {
    clear: both;
    }
  • 利点: ラベルにクラスを直接追加すると、フローティングをクリアできます。
  1. 親要素にoverflow: hidden を設定します。
  • 利点: シンプルかつ直接的、便利

10.BFC

10.1 BFC の概要

  • ブロック フォーマット コンテキストは、Web ページの視覚的な CSS レンダリングの一部であり、ブロック ボックスのレイアウトが発生し、フローティング要素が他の要素と相互作用する領域です。

10.2. BFCの作成方法

  1. htmlタグはBFCボックスです
  2. フローティング要素は BFC ボックスです
  3. インライン要素は BFC ボックスです
  4. overflow 属性値は表示されず、BFC ボックスです
  5. position: absolute または fixed

10.3. BFCボックスの特徴

  1. BFC ボックスはデフォルトで内部サブ要素 (標準フロー、フローティング フロー) をラップします -> 応用シナリオ: クリアフローティング
  2. BFC ボックス自体とその子要素の間にマージンの崩壊はありません -> 応用シナリオ: margin の崩壊を解決する

11. 位置決め

11.1. ポジショニングアプリケーションシナリオ

  1. ボックス間のカスケード問題を解決できる
  • 配置後の要素は最も高いレベルを持ち、他のボックスの上に積み重ねることができます
  1. ボックスは常に画面上の特定の位置に固定できます

11.2. 位置決めを使用する手順

11.2.1 測位方法を設定する

属性名: 位置

位置決め方法

ターゲティング 属性値 誰が相対的に移動するか 場所を取るのですか
静的位置決め static 方向プロパティでは移動できません ポジションを占める
相対的な位置決め relative 元の位置に対して ポジションを占める
絶対位置決め absolute 最も近い位置にある祖先要素を基準にして移動します 場所をとらない(適応外)
固定位置 fixed ブラウザの表示可能領域に対して 場所をとらない(適応外)
11.2.2 オフセット値の設定
  • オフセット値の設定は 2 つの方向に分かれており、水平方向と垂直方向のいずれかを選択します。
  • 選択の原理は近接性の原理である
方向 属性名 属性値 意味
レベル left 数値+px 左からの距離
レベル right 数値+px 右への距離
垂直 top 数値+px 頂上からの距離
垂直 bottom 数値+px 底からの距離

11.3. 位置決め方法

11.3.1 静的位置決め

はじめに: 静的配置はデフォルト値であり、標準フローであり、方向属性を介して移動することはできません。
コード: position: static;

11.3.2 相対位置決め

はじめに: 前の位置を基準とした変位
コード: position: relative;
特徴:

  1. 動きを実現するにはorientation属性と連携する必要がある
  2. 元の位置を基準にして移動します
  3. 標準の流れから逸脱することなくページ内の位置を占める

アプリケーションシナリオ:

  1. 絶対的なポジショニングに協力する(子供と父親)
  2. 狭い範囲の移動
11.3.3 絶対位置決め

はじめに: 前の位置を基準とした変位
コード: position: absolute;
特徴:

  1. 動きを実現するにはorientation属性と連携する必要がある
  2. デフォルトではブラウザの表示可能領域に相対して移動します
  3. ページ内の場所を占めず、標準的なフローから外れます
  4. 最も近い位置にある(非静的) 祖先要素を基準にして移動します

アプリケーションシナリオ:

  1. 相対的な位置関係(息子と父親)に協力する

     <!DOCTYPE html>
     <head>
         <meta charset="UTF-8">
         <title>水平方向と垂直方向の中央揃え</title>
         <style>
             /* 相对于浏览器可视区域进行移动 */
             .father {
                 position: absolute;
                 top: 50%;
                 left: 50%;
                 width: 500px;
                 height: 500px;
                 background-color: pink;
                 transform: translate(-50%, -50%);
             }
             /* 最も近い位置にある (非静的) 祖先要素を基準にして移動します */
             .son {
                 position: absolute;
                 top: 50%;
                 left: 50%;
                 width: 200px;
                 height: 200px;
                 background-color: red;
                 transform: translate(-50%, -50%);
             }
         </style>
     </head>
     <body>
         <div class="father">
             <div class="son"></div>
         </div>
     </body>
     </html>
    
11.3.3 固定位置

はじめに:ブラウザを基準とした
コードの位置決め: position: fixed;
機能:

  1. 動きを実現するにはorientation属性と連携する必要がある
  2. ブラウザの表示可能領域に対して相対的に移動します
  3. ページ内の場所を占めず、標準的なフローから外れます
  4. 最も近い位置にある(非静的) 祖先要素を基準にして移動します

アプリケーションシナリオ:

  1. ボックスを画面上の特定の位置に固定します

12 要素階層 (z-index)

12.1. 要素の階層

  1. 異なるレイアウト方法の階層関係
  • 標準ストリーム<float<位置指定
  1. 異なるターゲティング間の階層関係
  • 相対、絶対、固定のデフォルト レベルは同じです
  • HTML では、以下に記述された要素はより高いレベルにあり、上の要素をオーバーライドします。

12.2. 階層を変更する方法

  • 属性z-index を要素に追加します。属性値が大きいほど、レベルが高くなります。

13. 装飾

13.1. ベースライン

はじめに: ブラウザのテキスト タイプ要素の組版には位置揃えのベースラインがあります (baseline)

13.2. テキストの配置

属性名:vertical-align
属性値

属性値 効果
baseline デフォルトのベースライン配置
top 上を揃える
middle 中央揃え
bottom 下揃え

アプリケーションシナリオ:

  1. テキストボックスとフォームボタンが整列できない問題を解決し、
  2. inputとimgが合わない問題を解決
  3. div内のテキストボックスが先頭に貼り付けられない問題を解決
  4. div の高さが設定されていない場合に、img タグの下に余分なギャップが生じる問題を解決しました。
  5. line-height を使用して img タグを垂直方向の中央に配置します

13.3. カーソルの種類

はじめに:マウスカーソルが要素上にあるときに表示されるスタイル
属性名を:cursor
属性値:

属性値 効果
default デフォルト、通常は矢印
pointer 小さな手の効果、ユーザーにクリックを促す
text I フォント、ユーザーにテキストの選択を求める
move 十字カーソル、ユーザーに移動を促す

13.4. 境界線の丸い角

導入: ボックスの四隅を丸くし、ページの詳細を増やし、ユーザー エクスペリエンスを向上させます
属性名: border-radius
: 数値 + px、パーセント

13.5. overflow

はじめに: オーバーフロー部分の表示効果を制御する

属性値 効果
visible デフォルト値、オーバーフロー部分が表示されます
hidden オーバーフロー非表示
scroll オーバーフローに関係なくスクロールバーを表示する
auto オーバーフローに基づいてスクロールバーを自動的に表示または非表示にする

13.6. 要素の非表示

はじめに: 要素自体をブラウザーで非表示にする

プロパティ:

  1. visibility: hidden;
  2. display: none;

違い

  1. visibility: hidden; 要素自体を非表示にし、Web ページ内の位置を占めます。
  2. display: none; 要素自体を非表示にし、Web ページ内の位置を占めません。

13.7. 要素の透明性

導入:要素全体(コンテンツも含む)をまとめて透明にする
属性名:opacity
属性値:0~1の数値

  • 1: 完全に不透明であることを意味します
  • 0: 完全に透明であることを意味します