ホームページ >ウェブフロントエンド >htmlチュートリアル >CSSの詳しい説明 Position_html/css_WEB-ITnose

CSSの詳しい説明 Position_html/css_WEB-ITnose

WBOY
WBOYオリジナル
2016-06-24 11:21:331088ブラウズ

フォント、テキスト、背景など、CSS の他の多くのプロパティは、ほとんどが理解しやすいものです。一部の CSS 本では、これらの単純な属性を大々的に紹介しますが、一部の難しい属性については説明が省略されており、重要な属性を避けて簡単に考えているのではないかと疑われています。理解するのが難しい CSS の主なプロパティには、ボックス構造と配置が含まれます。ポジションがすべてであるのと同じように、この記事では主にポジションの理解について説明し、この記事を読んだ後にポジションについて最も包括的に理解できるように努めます。

position の 4 つの属性値:

  1. relative
  2. absolute
  3. fixed
  4. static

これら 4 つの属性については、以下で説明します。

sub1



1.relative


relative 属性は比較的単純で、どのオブジェクトに対して相対的にオフセットされているかを把握する必要があります。答えはその場所にあります。上記のコードでは、sub1 と sub2 が兄弟関係にあります。たとえば、sub1 に相対属性を設定する場合は、次の CSS コードを設定します。 : 5px;
left: 5px;
}


relative 属性が設定されていない場合、sub1 の位置は通常のドキュメント フローに従って特定の位置にあることがわかります。ただし、sub1 の位置が相対に設定されている場合、上、右、下、左の値に応じて想定される位置に応じてオフセットされます。相対の「相対」の意味もこれに反映されます。 。

このために必要なのは、sub1 が相対的に設定されていない場合はどこにあるかを覚えておくことだけであり、設定されたら、あるべき場所に従ってオフセットします。

次の質問は、サブ2の位置はどこですか?答えは、sub1 がposition 属性を追加するため、以前の位置と現在の位置は変わりません。

このときsub2の位置も相対にするとどうなるでしょうか?この時点では、sub1 と同じままで、元の位置に従ってオフセットされます。


相対オフセットはオブジェクトのマージンの左上側に基づいていることに注意してください。

2. 絶対

この属性は常に誤解を招きます。位置属性が絶対に設定されている場合、常にブラウザウィンドウに従って配置されると言われていますが、これは実際には間違っています。実はこれが固定資産の特徴なのです。

sub1の位置を絶対位置に設定した場合、オフセットの対象となるのは誰ですか?ここには 2 つの状況があります:

(1) sub1 の親オブジェクト (親オブジェクトである限り曾祖父) の親も位置属性を設定し、位置の属性値が絶対または相対、または固定、つまり はデフォルト値ではありません。現時点では、sub1 はこの親に従って配置されます。

オブジェクトは決定されましたが、注意が必要な詳細がいくつかあることに注意してください。つまり、オブジェクトを配置するために親のどの位置決め点を使用する必要があるかということです。親がマージン、ボーダー、パディングなどの属性を設定している場合、この位置決めポイントはパディングを無視し、パディングの開始位置 (つまり、パディングの左上隅からのみ開始) から配置されます。余白の左上端を配置するという考え方が異なります。

次の質問は、sub2 の場所はどこですか?位置が絶対に設定されている場合、sub1 は親に属していないかのように通常のドキュメント フローからオーバーフローしてしまうため、DreamWeaver では「レイヤー」と呼ばれますが、実際には同じ意味です。 。この時点で、sub2 は sub1 の位置を取得し、そのドキュメント フローは sub1 に基づくのではなく、親から直接開始されます。

(2) sub1 に位置属性を持つ親オブジェクトがない場合は、body が位置決めオブジェクトとして使用されるため、理解しやすいです。

3. fixed

fixed は特別な絶対値です。つまり、fixed は常にブラウザの表示ウィンドウに配置されます。この場所は HTML 本文に基づいて配置されていないことに注意する必要があります。この属性は、NetEase Web サイトの上部にあるナビゲーション バーなど、スクロール バーの移動に合わせて固定される Web サイトのトップ メニューを設計するのに非常に役立ちます。 Position 属性が設定されていない場合は、通常のドキュメントのストリーム配置に従います



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。