CSS の position 属性の値に関する研究 (概要)

CSS の position 属性の値に関する研究 (概要)

CSS の位​​置属性は要素の配置タイプを指定し、上、下、左、右を使用して要素を具体的に配置します。

位置属性は特定の配置の前に使用する必要があります。そうしないと、すべての特定の配置属性が有効になりません。

位置には、静的、相対的、絶対的、固定、またはスティッキーの 5 つの値があります。

以下、ブロガーがコードの比較と実行結果を一つずつ説明します。

まず、position属性が設定されていません。2つの要素のtop属性は有効ではなく、color属性が有効であることがわかります。現在の位置は、デフォルトのドキュメントフローでの位置です。これは、位置を変更したときに要素の位置がどのように変化するかを比較するためのプロトタイプとして使用されます。

<!DOCTYPE html>

<html lang="ja">

<ヘッド>

    <メタ文字セット="UTF-8">

    <link rel="スタイルシート" href="./j.css">

</head>

<本文>

    <div class="box" id="one">1</div>

    <div class="box" id="two">2</div>

    <div class="box" id="three">3</div>

    <div class="box" id="four">4</div>  

</div>

</本文>

</html>
。箱 {
    表示: インラインブロック;

    背景: 赤;
    色: 白;
  }
  
  #二 {
    上: 260px;
    下部: 126px;
    左: 20px;
    背景: 青;
  } 

位置:静的

次のように #two クラスに position: static; を追加します (後続の各位置では位置の値のみが変更されます)

#二 {
    位置:静的;
    上: 260px;
    下部: 126px;
    左: 20px;
    背景: 青;
  } 

HTML 要素のデフォルト値は、配置がなく、通常のフローで表示されることです。

静的に配置された要素は、上、下、左、右の影響を受けません。

この値は位置決め属性を無効にするので、その存在の意味は何でしょうか?

Web ページのスタイルを変更するプロセス中に、特定の要素の位置情報を一時的にブロックしたり、変更中に特定の部分の位置情報を保持して回復を容易にしたりすることができます。

位置:相対

相対配置は、元の通常の文書フローを基準とした配置ですが、配置中に元のページレイアウトは変更されません。配置された要素を移動するだけと同じで、移動された比較基準位置は通常の文書フローでの位置となり、元の位置は空白のままになります。

位置: 絶対

絶対配置では、要素は通常のドキュメント フローから削除され、ページ レイアウト内に要素用のスペースが作成されません。最近配置された親要素を基準にして配置されます。この例では、配置は body 要素に基づいています。

位置: 固定

固定配置は、通常のドキュメントフローから削除され、ページレイアウトに要素のためのスペースを作成しないという点で絶対配置に似ています。違いは、ビューポートに固定され、ビューポートに基づいて配置されることです。多くのWebページを閲覧しているときに、誰もがこのような経験をしたことがあると思います。Webページの上部または下部に、Webページのスクロールに合わせて移動しない広告があります。それらはWebページに固定されており、スタック順序を変更するためにz-indexが設定されていない場合、Webページのコンテンツをカバーします。

位置: 固定

要素はドキュメント フローを離れず、ドキュメント フロー内の元の位置を保持します。

要素がコンテナ内の指定されたオフセット値を超えてスクロールされると、要素はコンテナ内の指定された位置に固定されます。つまり、top: 20px を設定すると、固定要素が相対的に配置された要素の上端から 50px の位置に達すると固定され、それ以上上方に移動しなくなります。

要素の固定相対オフセットは、最も近いスクロール ボックスを持つ親要素を基準とします。親要素をスクロールできない場合、要素のオフセットはビューポートを基準として計算されます。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

<<:  JavaScript でオブジェクトをトラバースする 5 つの方法 サンプルコード

>>:  初心者がHTMLタグを学ぶ(3)

推薦する

Mysqlの日付と時刻関数を扱う記事

目次序文1. 現在の時刻を取得する1.1 現在の日付と時刻を返す1.2 現在の日付を取得する1.3 ...

Linux nohup コマンドの原理と例の分析

nohup コマンドUnix/Linux を使用する場合、通常はプログラムをバックグラウンドで実行す...

Dockerはターミナルで中国語を入力できない問題を解決します

序文:ある日、DockerでMySQLサービスを構築したところ、MySQLのコマンドラインで中国語の...

JavaScriptはPromiseを使用して複数の繰り返しリクエストを処理します

1. なぜこの記事を書くのですか?重複リクエストの処理に関する記事をたくさん読んだことがあるでしょう...

MySQLにおける遅いSQLの最適化の方向性について詳しく話しましょう

目次序文SQL文の最適化遅いクエリSQLを記録する設定を変更する方法スロークエリログを表示するSQL...

JavaScript 関数はランダムな色の検証コードをカプセル化します (完全なコード)

数字、文字、またはランダムな色の数字と文字の混合で構成される n 桁の確認コード。以下に完全なコード...

WeChatアプレットはビデオプレーヤーのビデオコンポーネントを使用します

この記事の例では、WeChatアプレットのビデオプレーヤーコンポーネントの具体的なコードを参考までに...

Vue イベントの $event パラメータ = イベント値の場合

テンプレート <el-table :data="データリスト"> &...

TomcatのmaxPostSize属性を設定する際に注意する必要がある問題を解決する

必要:近い将来、大容量ファイルのアップロード機能を実装します。フロントエンドフレームワークのアップロ...

ページ リファクタリング スキル - Javascript、CSS

JS、CSSについてCS: ...上部のスタイルシートCSS式を避ける外部JS、CSSの使用JSと...

MySQLのテーブル構造を変更する際に知っておきたいメタデータロックの詳しい解説

序文MySQL を扱ったことがある人なら、テーブル メタデータ ロックの待機についてよく知っているは...

LinuxでIPアドレスを手動で設定するための詳細な手順

目次1.まずネットワークカードの設定ディレクトリに入る2. ifcfg-ens33ネットワークカード...

iframe を使用して Web ページに他の Web ページを埋め込む方法

iframe の使い方:コードをコピーコードは次のとおりです。 <DIV align=cent...

ページのレンダリング時間を短縮してページの実行速度を速めます

ブラウザでのページのレンダリング時間をできるだけ短縮するにはどうすればよいでしょうか? この記事は、...

ウェブページの読み込み速度を上げる6つのヒント

第二に、キーワードのランキングは、Webページの表示速度にも関係しています(参照:キーワードランキン...