あちゃまWEB >

CSS positionの定義方法

positionプロパティは、要素がドキュメント内でどのように配置されるかを制御します。
このプロパティは、要素の配置方法(通常のフローに従うか、特定の基準点からのオフセットを持つかなど)を決定し、top, right, bottom, leftといったオフセットプロパティと組み合わせて使用されます。

プロパティ値 関連CSSプロパティの影響 CSSコード例 プレビュー
static
要素を通常のドキュメントフローに沿って配置します。これがデフォルト値です。
.element {
position: static;
margin: 5px;
padding: 10px;
background-color: #b3e0ff;
}
Static Box 1
Static Box 2
relative
要素を通常のフローに沿って配置しますが、top, right, bottom, leftプロパティによって、その本来の位置からオフセットされます。オフセットされても、元の場所は占有し続けます。
.element {
position: relative;
top: 10px;
left: 10px;
background-color: #ffb6c1;
}
Relative Box
通常フローの要素
absolute
要素を通常のフローから完全に削除し、最も近いpositionプロパティがstatic以外(relative, absolute, fixed, sticky)の祖先要素を基準に配置します。そのような祖先要素がない場合は、初期包含ブロック(通常は<html>要素)を基準に配置されます。
.parent {
position: relative; /* 基準 */
}
.element {
position: absolute;
top: 20px;
right: 20px;
background-color: #add8e6;
z-index: 10;
}
Absolute Box
Sibling 1
Sibling 2
fixed
要素を通常のフローから完全に削除し、ビューポート(ブラウザの表示領域)を基準に配置します。ページをスクロールしても、要素は常に同じ位置に留まります。
.element {
position: fixed;
top: 20px;
right: 20px;
background-color: #ffdead;
z-index: 100;
}

ここにスクロール可能なコンテンツがあります。
スクロールしてみてください。

Fixed要素は常に右上に表示されます。





スクロール可能なコンテンツ

Fixed Box
sticky
要素は通常のフローに沿って配置されますが、スクロール位置に応じてfixedのように振る舞います。指定されたオフセット(例: top: 0;)に達すると、その位置で固定されます。
.parent {
height: 300px;
overflow-y: scroll;
}
.element {
position: sticky;
top: 0;
background-color: #c1ffc1;
z-index: 50;
}
スクロールしてSticky Boxを固定してみてください。
Sticky Box
さらに下のコンテンツ
さらに下のコンテンツ
さらに下のコンテンツ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

WordPress情報


WEB開発


その他