0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

CSSのpositionプロパティについて

Posted at

CSSのpositionとは

 positionとは要素の位置を決めるためのプロパティです。

どんな使い方ができるのか

要素を指定したぶんだけ動かしたり、要素の上に別の要素を重ねてのせることができたり(画像の上に要素をのせるイメージ)、常に画面の同じ位置に要素を固定したりできます。

positionの書き方

 positionプロパティはCSSで以下のように書きます。

セレクタ名 { position : 値 }

値には次の4つのどれかを指定します。

positionの値
static  : 初期値。指定することはほとんどない
relative : 現在の位置を基準相対的な位置を決める
absolute : 親要素を基準絶対的な位置を決める
fixed   : 画面の決まった位置に固定する

positionは基本的にtopbottomleftrightというプロパティとセットで使います。
位置を指定する流れ
positionで基準を決める。
top bottom left rightで具体的な位置を数字で調整

staticとは?

初期値 : CSSで何も指定していなければこれになっている
要素は通常の位置に : 上下左右に動かすことができない
要素の位置を調整できない : topleftなどを指定しても効果がない
z-indexを指定できない : 要素の重なり順を変えられない

基本的にstaticを指定することはない。

position: relative

position: relativeは現在の表示位置から相対的に要素の位置を動かした糸気に使います。

 position: relativeとしても、topbottomを指定しなければstaticと同じ位置に表示されます。
そのため一見同じように感じられるが、①位置調整の可否や②z-index指定の可否という違いがあります。「z-indextopなどが指定できないときはrelativeにする!」とおぼえておくと良いでしょう。

position:absolute

absoluteだと親要素を基準に、絶対的な位置を指定することになります。この「絶対的な位置」というのは、要素がどんな形であろうと、間に他の要素や余白が入っていようと、その位置に配置してくれるということ意味します。

親要素はrelativeにしておく

 absoluteを使って位置調整するときは、親要素にposition: relative(もしくはfixed)を指定しましょう。これを忘れると基準位置がずれて思ったように表示されません。absoluteを使うときは、親要素もセットで変えるようにしましょう。

position: fixed

これは、画面の決まった位置に要素を固定させたい時に使う。スクロールしても位置が変わらないメニューバーなどを表示させたい時に使うと便利。
 absoluteと指定方法がほとんど同じですが、位置の基準は親要素ではなく「ウィンドウ全体」です。そのため、要素の位置に関係なくtop: 0と指定したら画面の最上部に表示されます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?