Position absolute ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта – absolute ΠΏΡ€ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΊΠ½Π° ΠΈ Ρ€Π°Π·Π»Π΅Ρ‚Π°ΡŽΡ‚ΡΡ ΠΊΡ‚ΠΎ ΠΊΡƒΠ΄Π°. ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΈ ΠΊΠ°ΠΊ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ? β€” Π₯Π°Π±Ρ€ Q&A

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² CSS: ΠΏΠΎΠ½ΡΡ‚ΡŒ Ρ€Π°Π· ΠΈ навсСгда

Π’Ρ‹ всС Π΅Ρ‰Π΅ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚Π΅ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² CSS ΠΈ тСряСтС элСмСнты Π½Π° экранС? Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ Π² этой ΠΌΠ°Π³ΠΈΠΈ.

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Когда Π²Ρ‹ устанавливаСтС position: absolute, Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΠ»Π°Π½ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ Π½Π΅ сам элСмСнт, Π° Π΅Π³ΠΎ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, вСдь ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅Π³ΠΎ ΠΈ осущСствляСтся ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² CSS. Π‘Π»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ это Π½Π΅ всСгда нСпосрСдствСнный Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ элСмСнта.

Рассмотрим ΠΊΠΎΠ΄ с Ρ‡Π΅Ρ‚Ρ‹Ρ€ΡŒΠΌΡ Π΄ΠΈΠ²Π°ΠΌΠΈ, Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ Π΄Ρ€ΡƒΠ³ Π² Π΄Ρ€ΡƒΠ³Π° ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ ΠΌΠ°Ρ‚Ρ€Π΅ΡˆΠΊΠΈ.

<body>
<div>
Β Β <div>
Β Β Β Β <div>
Β Β Β Β Β Β <div></div>
Β Β Β Β </div>
Β Β </div>
</div>
</body>

Π‘Π»ΠΎΠΊΠΈ box-1, box-2 ΠΈ box-3 для красоты ΠΎΡ‚Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ свойств margin: auto ΠΈ свойств flex CSS. Π‘Π»ΠΎΠΊ box-4 остаСтся Π² своСй Π΄Π΅Ρ„ΠΎΠ»Ρ‚Π½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ Π² ΠΏΠΎΡ‚ΠΎΠΊΠ΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.

body {
Β Β display: flex;
}

.box-1,
.box-2,
.box-3 {
Β Β display: flex;
Β Β margin: auto;
}

ВсС 4 элСмСнта ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ вСрстка выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

.box-4 Π±Π΅Π· позиционирования

ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‡Π΅Π³ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΠ΅ΠΌ?

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ сСбя, элСмСнт Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π½Π°Ρ‚ΡŒ Π΄Π²Π΅ Π²Π΅Ρ‰ΠΈ:

  • ΠΊΠ°ΠΊΠΎΠΉ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ станСт Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ отсчСта;
  • Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρƒ смСщСния ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚ΠΎΡ‡ΠΊΠΈ отсчСта (свСрху, снизу, справа ΠΈΠ»ΠΈ слСва).

Если ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ position: absolute для box-4, этот элСмСнт ΠΏΠΎΠΊΠΈΠ½Π΅Ρ‚ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ‚ΠΎΠΊ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°. Но сСйчас ΠΎΠ½ остаСтся Π½Π° своСм мСстС, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ смСщСния Π½Π΅ Π·Π°Π΄Π°Π½Ρ‹. Если Π² CSS ΡˆΠΈΡ€ΠΈΠ½Π° элСмСнта Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π°, ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π½Π° ΡˆΠΈΡ€ΠΈΠ½Π΅ Π΅Π³ΠΎ содСрТимого (плюс ΠΏΠ°Π΄Π΄ΠΈΠ½Π³ΠΈ ΠΈ Ρ€Π°ΠΌΠΊΠ°).

.box-4 с Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΌ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±Π΅Π· смСщСния

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ свойства top: 0 ΠΈ left: 0. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ станСт Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ отсчСта для этих ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚. Π•ΠΉ становится блиТайший элСмСнт с нСстатичСской ΠΏΠΎΠ·ΠΈΡ†ΠΈΠ΅ΠΉ (Ρ‡Π°Ρ‰Π΅ всСго position: relative). box-4 Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΏΠΎΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎ ΠΎΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ своих ΠΏΡ€Π΅Π΄ΠΊΠΎΠ². Ни box-3, Π½ΠΈ box-2, Π½ΠΈ box-1 Π½Π΅ подходят, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² CSS ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ (

unset).

Если ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€Π΅Π΄ΠΎΠΊ Π½Π΅ нашСлся, элСмСнт размСщаСтся ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚Π΅Π»Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° (body):

.box-4 с Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΌ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ. Π ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ элСмСнты Π±Π΅Π· позиционирования

Если ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ position: relative для элСмСнта box-1, Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ отсчСта станСт ΠΎΠ½:

.box-4 с Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΌ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ. .box-1 с ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ

ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ элСмСнт располагаСтся ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ блиТайшСго ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€Π΅Π΄ΠΊΠ°.

Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΡ‡ΠΊΠ° отсчСта нашлась, всС, Ρ‡Ρ‚ΠΎ Π²Ρ‹ΡˆΠ΅ Π½Π΅Π΅ Π² DOM-Π΄Π΅Ρ€Π΅Π²Π΅, пСрСстаСт ΠΈΠΌΠ΅Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

Если ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ position: relative Ρ‚Π°ΠΊΠΆΠ΅ для box-2, Ρ‚ΠΎ box-4 Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅Π³ΠΎ, вСдь этот ΠΏΡ€Π΅Π΄ΠΎΠΊ Π±Π»ΠΈΠΆΠ΅.

.box-4 с Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΌ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ. .box-2 с ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ

Аналогично ΠΈ для ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° box-3:

.box-4 с Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΌ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ. .box-3 с ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ

А Π²ΠΎΡ‚ ΠΈ наглядный красивый CSS-ΠΏΡ€ΠΈΠΌΠ΅Ρ€ поиска ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€Π΅Π΄ΠΊΠ°:

ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΡΡ‚Π°Ρ‚ΡŒΠΈ How to understand CSS Position Absolute once and for all.

Π•Ρ‰Π΅ большС ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… статСй ΠΏΠΎ CSS:

НалоТСниС (position: absolute;) | CSS ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ с position: absolute; смСщаСтся Π½Π° расстояниС, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π² свойствах top, right, bottom, left, ΠΎΡ‚ края блиТайшСго родитСля с position Π½Π΅ static. ΠŸΠ΅Ρ€Π΅Π΄Π²ΠΈΠ½ΡƒΡ‚ΡŒ Π΅Π³ΠΎ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ своСго располоТСния ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ margin ΠΈ transform. Π Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ элСмСнта Π½Π°Π΄ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ элСмСнтами правится с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ свойства z-index.

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ свойство position

ΠΏΡ€ΠΈΠΌΠ΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ absolute, Ρ€Π°Π·ΠΌΠ΅Ρ€ элСмСнта ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΡΡ, Π° сосСдниС элСмСнты сдвинутся Π½Π° освободившССся пространство.

ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ элСмСнт Π½Π°Π΄ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ элСмСнтами, ΡƒΠ±Ρ€Π°Π² Π΅Π³ΠΎ ΠΈΠ· ΠΏΠΎΡ‚ΠΎΠΊΠ°

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ с position: absolute; Π½Π΅ влияСт Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€ родитСля.

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ с position: absolute; Π½Π΅ влияСт Π½Π° ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ сосСдСй: Ρ†ΠΈΡ„Ρ€Ρ‹ 20, 21, 22, … ΡΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ ΠΊ Ρ†ΠΈΡ„Ρ€Π΅ 19.

Π Π°ΡΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ элСмСнт с position: absolute; ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ блиТайшСго родитСля с position Π½Π΅ static

top

bottom

Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ элСмСнт
position:Β relative;

Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ элСмСнт position:Β absolute;

left

right

Бвойства top, right, bottom, left ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅, Ρ‚Π°ΠΊ ΠΈ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ значСния Π² Π»ΡŽΠ±Ρ‹Ρ… Π΅Π΄ΠΈΠ½ΠΈΡ†Π°Ρ… измСрСния, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π² ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π°Ρ…. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρƒ Π½ΠΈΡ… установлСно Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ auto.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39

<style>
.raz {
  
position: relative;
background: mistyrose; } .absolute { position: absolute; top: 0; background: lightpink; } </style> <div> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 <span>Π­Π»Π΅ΠΌΠ΅Π½Ρ‚</span> 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 </div>

Если свойство border Π·Π°Π΄Π°Π½ΠΎ Π±Π»ΠΈΠΆΠ°ΠΉΡˆΠ΅ΠΌΡƒ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŽ с position Π½Π΅ static, Ρ‚ΠΎ элСмСнт смСщаСтся ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ края Ρ€Π°ΠΌΠΊΠΈ, созданной этим свойством.

ЗначСния свойств top ΠΈ bottom Π² ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π°Ρ… Ρ€Π°ΡΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ высоты Π·Π° минусом border-top-width ΠΈ border-bottom-width блиТайшСго родитСля с position Π½Π΅ static. ЗначСния свойств left ΠΈ right Π² ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π°Ρ… Ρ€Π°ΡΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ ΡˆΠΈΡ€ΠΈΠ½Ρ‹ Π·Π° минусом border-left-width ΠΈ

border-right-width блиТайшСго родитСля с position Π½Π΅ static.

ИспользованиС свойств top ΠΈΠ»ΠΈ bottom, left ΠΈΠ»ΠΈ right зависит ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ситуации.

1 2 3 4 5 6 7 8 9 10

11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27Π­Π»Π΅ΠΌΠ΅Π½Ρ‚28 29 30 31 32 33 34 35 36 37 38 39 40

41 42 43 44 45 46 47 48 49 50
<style>
.raz {
  position: relative;
  border: 5px solid red; 
}
.absolute {
  position: absolute;
  top: -5px;
  background: lightpink;
}
</style>

<div>
  11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
  <span>Π­Π»Π΅ΠΌΠ΅Π½Ρ‚</span>
  28 29 30 31 32 33 34 35 36 37 38 39 40
</div>

Π¨ΠΈΡ€ΠΈΠ½Π° ΠΈ высота элСмСнта с position: absolute; ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° блиТайшСго родитСля с position Π½Π΅ static

Π¨ΠΈΡ€ΠΈΠ½Π° элСмСнта с position: absolute; Π±Π΅Π· явно Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ значСния устанавливаСтся ΠΏΠΎ содСрТимому. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ с

display Π½Π΅ block ΠΈ position: absolute; Π²Π΅Π΄ΡƒΡ‚ сСбя ΠΊΠ°ΠΊ элСмСнты с display: block; ΠΈ position: absolute;.

Π‘Π΅Π· явно Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΡˆΠΈΡ€ΠΈΠ½Ρ‹ ΠΈ/ΠΈΠ»ΠΈ высоты Ρ€Π°Π·ΠΌΠ΅Ρ€ элСмСнта опрСдСляСтся расстояниСм ΠΎΡ‚ left Π½Π΅ auto Π΄ΠΎ right Π½Π΅ auto ΠΈ/ΠΈΠ»ΠΈ ΠΎΡ‚ top Π½Π΅ auto Π΄ΠΎ bottom Π½Π΅ auto .

Π‘Ρ‚ΠΈΠ»ΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°ΡΡ‚ΡΠ½ΡƒΡ‚ΡŒ Π±Π»ΠΎΠΊ Π½Π° всю ΡˆΠΈΡ€ΠΈΠ½Ρƒ ΠΈ высоту родитСля Π±Π΅Π· border, Π½ΠΎ с position Π½Π΅ static:


  left: 0;
  right: 0;
  top: 0;
  bottom: 0;



  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;

Π‘ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠΉ ΡˆΠΈΡ€ΠΈΠ½ΠΎΠΉ ΠΈ/ΠΈΠ»ΠΈ высотой расстояниС ΠΎΡ‚ left Π½Π΅ auto Π΄ΠΎ right Π½Π΅ auto ΠΈ/ΠΈΠ»ΠΈ ΠΎΡ‚ top Π½Π΅ auto Π΄ΠΎ

bottom Π½Π΅ auto опрСдСляСт ΠΎΠ±Π»Π°ΡΡ‚ΡŒ, Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ элСмСнт с margin: auto; . Если расстояниС ΠΎΡ‚ left Π½Π΅ auto Π΄ΠΎ right Π½Π΅ auto мСньшС width, Ρ‚ΠΎ свойство right игнорируСтся .

Бвойство height Π² ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π°Ρ… Π½Π΅ замСняСтся Π½Π° height: auto;, Π΄Π°ΠΆΠ΅ ΠΊΠΎΠ³Π΄Π° блиТайший Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ ΠΈΠΌΠ΅Π΅Ρ‚ height: auto;.

Π‘Π»ΠΎΠΊ с position: absolute; Π²Π½ΡƒΡ‚Ρ€ΠΈ блиТайшСго родитСля с position Π½Π΅ static ΠΈ overflow Π½Π΅ visible

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ overflow ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ΅ ΠΎΡ‚ visible Ρƒ блиТайшСго родитСля с position Π½Π΅ static прячСт Π²Ρ‹Ρ…ΠΎΠ΄ΡΡ‰ΡƒΡŽ Π·Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ Ρ‡Π°ΡΡ‚ΡŒ Π΄ΠΎΡ‡Π΅Ρ€Π½Π΅Π³ΠΎ элСмСнта с ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ экрана видимости. Если Ρƒ блиТайшСго родитСля с position Π½Π΅ static ΠΈ overflow: auto; Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π° ΡˆΠΈΡ€ΠΈΠ½Π° ΠΈ высота, Ρ‚ΠΎ ΠΏΡ€ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌ direction появляСтся полоса ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ, которая ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ скрываСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠΉ элСмСнт с

position: absolute;.

ΠŸΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ элСмСнта ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ родитСля

Π ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ с position: static; пропускаСтся. Если Π½Π΅Ρ‚ родитСля с position Π½Π΅ static, Ρ‚ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ элСмСнта рассчитываСтся ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ области просмотра ΠΎΠΊΠ½Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° .

Π§Ρ‚ΠΎΠ±Ρ‹ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π±Π»ΠΎΠΊ Ρ€Π°ΡΡ‚ΡΠ½ΡƒΡ‚ΡŒ Π½Π° всё содСрТимоС вмСстС со скроллингом блиТайшСго ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€Π΅Π΄ΠΊΠ°, Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Π΅Ρ€Π½ΡƒΡ‚ΡŒ содСрТимоС Π² Π΅Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ Ρ‚Π΅Π³, ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊ .

Π ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ с position: static; ΠΈ overflow Π½Π΅ visible, стоящий Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ родитСля, Π½Π΅ прячСт содСрТимоС ΠΏΠΎΡ‚ΠΎΠΌΠΊΠ° с position: absolute;.

Бвойства width, margin ΠΈ padding Π² ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π°Ρ… Ρ€Π°ΡΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ ΡˆΠΈΡ€ΠΈΠ½Ρ‹ Π·Π° минусом border-left-width ΠΈ border-right-width блиТайшСго родитСля с position Π½Π΅

static.

CSS position: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΈ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

CSS- свойство position опрСдСляСт ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ элСмСнта Π½Π° Π²Π΅Π±-страницС. БущСствуСт нСсколько Ρ‚ΠΈΠΏΠΎΠ² позиционирования: static, relative, absolute, fixed, sticky, initial ΠΈ inherit. РазбСрСмся, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚ эти Ρ‚ΠΈΠΏΡ‹:

  • Staticβ€” это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ свойства ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Π² Ρ‚ΠΎΠΌ порядкС, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ½ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Π½Π° Π²Π΅Π±-страницС.
  • Relativeβ€” элСмСнт позиционируСтся ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ своСго стандартного полоТСния.
  • Absoluteβ€” элСмСнт позиционируСтся Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŽ.
  • Fixedβ€” элСмСнт позиционируСтся ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΊΠ½Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.
  • Stickyβ€” элСмСнт позиционируСтся Π½Π° основС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Π΄Π²ΡƒΡ… Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… значСниях свойства position β€” relative ΠΈ absolute.

Когда Π²Ρ‹ устанавливаСтС ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ элСмСнта, Π±Π΅Π· добавлСния Π΄Ρ€ΡƒΠ³ΠΈΡ… Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² позиционирования (top, bottom, right, left), Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚. ΠŸΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ left: 20px, элСмСнт пСрСмСстится Π½Π° 20 пиксСлСй Π²ΠΏΡ€Π°Π²ΠΎ ΠΎΡ‚ своСй ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ. Π’ΠΎ Π΅ΡΡ‚ΡŒ, элСмСнт смСщаСтся ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ сСбя самого. ΠŸΡ€ΠΈ этом Π΄Ρ€ΡƒΠ³ΠΈΠ΅ элСмСнты Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚Ρ‹.

position: relative; ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ дСйствия Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΡ… элСмСнтов. Π’ΠΎ Π΅ΡΡ‚ΡŒ, ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… этого Π±Π»ΠΎΠΊΠ°.

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅, ΠΊΠ°ΠΊ смСщаСтся ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ элСмСнт ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π΅Π³ΠΎ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ². ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт смСщаСтся Π²Π»Π΅Π²ΠΎ ΠΈ Π²Π²Π΅Ρ€Ρ… ΠΎΡ‚ своСй ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ. Π’Ρ‚ΠΎΡ€ΠΎΠΉ элСмСнт остаСтся Π½Π° Ρ‚ΠΎΠΌ ΠΆΠ΅ мСстС, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² позиционирования Π½Π΅ Π±Ρ‹Π» ΠΈΠ·ΠΌΠ΅Π½Π΅Π½.

<div>First element</div> 
<div>Second element</div>
#first_element { 
  position: relative; 
  left: 30px; 
  top: 70px; 
  width: 500px; 
  background-color: #fafafa; 
  border: solid 3px #ff7347; 
  font-size: 24px; 
  text-align: center; 
} 
#second_element { 
  position: relative; 
  width: 500px; 
  background-color: #fafafa; 
  border: solid 3px #ff7347; 
  font-size: 24px; 
  text-align: center; 
}

ΠŸΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ выполняСтся ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта. Π’ случаС, ΠΊΠΎΠ³Π΄Π° Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта Π½Π΅Ρ‚, ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒΡΡ нСпосрСдствСнно ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ элСмСнту HTML (самой страницС).

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ для Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта Π·Π°Π΄Π°Π½ΠΎ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. Π’Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ для Π΄ΠΎΡ‡Π΅Ρ€Π½Π΅Π³ΠΎ элСмСнта Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ absolute, любоС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта. Π”ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ элСмСнт пСрСмСщаСтся ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта Π½Π° 100 пиксСлСй ΠΈ ΠΏΡ€Π°Π²Π΅Π΅ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта Π½Π° 40 пиксСлСй.

<div id=”parent”>
  <div id=”child”></div>
</div>
#parent { 
  position: relative; 
  width: 500px; 
  height: 400px; 
  background-color: #fafafa; 
  border: solid 3px #9e70ba; 
  font-size: 24px; 
  text-align: center; 
} 
#child { 
  position: absolute; 
  right: 40px; 
  top: 100px; 
  width: 200px; 
  height: 200px; 
  background-color: #fafafa; 
  border: solid 3px #78e382; 
  font-size: 24px; 
  text-align: center; 
}

Π’ этих ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… ΠΌΡ‹ продСмонстрировали различия ΠΌΠ΅ΠΆΠ΄Ρƒ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΠΈ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ элСмСнтами. НадССмся, эта ΡΡ‚Π°Ρ‚ΡŒΡ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ Π² Π±ΡƒΠ΄ΡƒΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ….

Данная публикация прСдставляСт собой ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΡΡ‚Π°Ρ‚ΡŒΠΈ Β«CSS Position Relative vs Position AbsoluteΒ» , ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΉ Π΄Ρ€ΡƒΠΆΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ.Ρ€Ρƒ

ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΈ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² HTML

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Данная ΡΡ‚Π°Ρ‚ΡŒΡ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² Π² ΠΌΠΈΡ€Π΅ Web-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π² Π½Π΅ΠΉ Π±ΡƒΠ΄ΡƒΡ‚ рассмотрСны основныС сцСнарии использования свойства position.

Под ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°ΡŽΡ‚ располоТСниС элСмСнта Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΉ систСмС ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚. МоТно Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ Ρ‚ΠΈΠΏΠ° позиционирования: Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅, Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅, ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΈ фиксированноС. Π’ зависимости ΠΎΡ‚ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°, установлСнного Ρ‡Π΅Ρ€Π΅Π· свойство position, Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΈ систСма ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚.

ВмСстС со свойством position цСлСсообразно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ свойств (ΠΈΠ»ΠΈ лишь нСсколько ΠΈΠ· Π½ΠΈΡ…): left, top, right, bottom ΠΈ z-index, с ΠΈΡ… ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ элСмСнт ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½ΠΎ ΠΈ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… случаях Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ нСзависимо ΠΎΡ‚ сосСдних элСмСнтов. Бвойства left, top, right, bottom ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‚ Π·Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ элСмСнта ΠΎΡ‚ Π΅Π³ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ полоТСния Π² Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… направлСниях: Π²ΠΏΡ€Π°Π²ΠΎ, Π²Π½ΠΈΠ·, Π²Π»Π΅Π²ΠΎ, Π²Π²Π΅Ρ€Ρ… соотвСтствСнно. Бвойство z-index ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ элСмСнта Π½Π° Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΏΠ»ΠΎΡΠΊΠΎΡΡ‚ΡŒ (ΠΈΠ»ΠΈ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ) ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ значСния ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ‚ 1 Π΄ΠΎ N.

НаиболСС часто свойство position ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для опрСдСлСния взаимного располоТСния слоСв, Π΄Π°Π»Π΅Π΅ рассмотрим особСнности Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² позиционирования.


ΠΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Ссли для элСмСнта Π½Π΅ Π·Π°Π΄Π°Π½ΠΎ свойство position ΠΈΠ»ΠΈ Π΅ΠΌΡƒ Π·Π°Π΄Π°Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ static, слои ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π΄Ρ€ΡƒΠ³ Π·Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ, ΠΏΡ€ΠΈ этом ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ начинаСтся с Π½ΠΎΠ²ΠΎΠΉ строки. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ, слои Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ максимально Π±Π»ΠΈΠ·ΠΊΠΎ ΠΊ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌΡƒ Π»Π΅Π²ΠΎΠΌΡƒ ΡƒΠ³Π»Ρƒ страницы ΠΈ Π±Π΅Π· отступов ΠΌΠ΅ΠΆΠ΄Ρƒ Π³Ρ€Π°Π½ΠΈΡ†Π°ΠΌΠΈ.

ΠšΡ€ΠΎΠΌΠ΅ этого, свойства left, top, right, bottom ΠΈ ΠΈΡ… значСния, Ссли Ρ‚Π°ΠΊΠΎΠ²Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹, ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ.

МоТСм ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ Π² этом, ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΠ² Π΄Π²Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΊΠΎΠ΄Π° Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅:

Π‘Π΅Π· использования свойства position.

<html>

<head>

Β Β Β  <title>Positiontitle>

Β Β Β  <style type=»text/css»>

Β Β Β Β Β Β Β  div {

Β Β Β Β Β Β Β Β Β Β Β  width: 240px;

Β Β Β Β Β Β Β Β Β Β Β  height: 80px;

Β Β Β Β Β Β Β  }

Β Β Β  style>

head>

<body>

Β Β Β  <div>div>

Β Β Β  <div>div>

Β Β Β  <div>div>

body>

html>

Π‘ использованиСм свойств position:static, top ΠΈ left:Β 

<html>Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β 

<head>

Β Β Β  <title>Positiontitle>

Β Β Β  <style type=»text/css»>

Β Β Β Β Β Β Β  div {

Β Β Β Β Β Β Β Β Β Β Β  width: 240px;

Β Β Β Β Β Β Β Β Β Β Β  height: 80px;

Β Β Β Β Β Β Β  }

Β Β Β  style>

head>

<body>

Β Β Β  <div>div>

Β Β Β  <div>div>

Β Β Β  <div>div>

body>

html>

Π’ ΠΈΡ‚ΠΎΠ³Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ нашСго ΠΊΠΎΠ΄Π° Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅:Β 

Код Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅

ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

ΠŸΡ€ΠΈ Π·Π°Π΄Π°Π½ΠΈΠΈ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ³ΠΎ позиционирования элСмСнта, ΠΎΠ½ «отдСляСтся» ΠΎΡ‚ ΠΏΠΎΡ‚ΠΎΠΊΠ° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° ΠΈ пСрСстаСт Π² Π½Π΅ΠΌ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ. Π•Π³ΠΎ мСстополоТСниС, Ρ€Π°Π²Π½ΠΎ ΠΊΠ°ΠΊ ΠΈ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, задаСтся ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊΡ€Π°Ρ‘Π² ΠΎΠΊΠ½Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, Π² Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ Β«Π²ΠΈΠ΄ΠΈΠΌΠΎΠΉ области». ЗадаСтся Ρ‚Π°ΠΊΠΎΠΉ Ρ‚ΠΈΠΏ Ρ‡Π΅Ρ€Π΅Π· Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ absolute свойства position.

Π‘Ρ‚ΠΎΠΈΡ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ особСнности Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° позиционирования:

— свойства top ΠΈ left ΠΈΠΌΠ΅ΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ высокий ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚, Π½Π΅ΠΆΠ΅Π»ΠΈ right ΠΈ bottom, это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡ΠΈΠΈ свойств left ΠΈ rightΒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ right Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ, Ρ‚Π°ΠΊΠΆΠ΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΏΠΎΠ²Π΅Π΄Π΅Ρ‚ сСбя ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ свойства bottom.

— ΠΏΡ€ΠΈ использовании Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ³ΠΎ позиционирования и Π·Π°Π΄Π°Π½ΠΈΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ свойствам left, top, right, bottom ΠΈ z-index ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ мСстополоТСниС слоя становится доступным для замСщСния Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ сосСдними элСмСнтами.

div {

Β Β  background-color:red;

Β Β  width: 120px;

Β Β  height: 240px;

Β Β  position: absolute; /*ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅ΠΌ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ элСмСнта*/

Β Β  top: 100px;Β  /*ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌ смСщСниС Π½Π° 100px Π²Π½ΠΈΠ· ΠΎΡ‚ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ мСстополоТСния слоя*/

Β Β  left: 150px; /*ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌ смСщСниС Π½Π° 100px Π²ΠΏΡ€Π°Π²ΠΎ ΠΎΡ‚ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ мСстополоТСния слоя*/

Β Β  bottom: 20px; /*Бвойства bottom ΠΈ right Π² Π΄Π°Π½Π½ΠΎΠΌ случаС Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ*/

Β Β  right: 40px;

}

Π‘ использованиСм свойств position:absolute, top ΠΈ left:Β 

<head>

Β Β Β  <title>Positiontitle>

Β Β Β  <style type=»text/css»>

Β Β Β Β Β Β Β  div {

Β Β Β Β Β Β Β Β Β Β Β  width: 240px;

Β Β Β Β Β Β Β Β Β Β Β  height: 240px;

Β Β Β Β Β Β Β Β Β Β Β  position: absolute

ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ (position:absolute)

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ³ΠΎ позиционирования

ЗдравствуйтС ΡƒΠ²Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ ΠŸΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅Π²Π΅Π±-мастСра.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ познакомимся с Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΈΠΌ свойством CSS β€” psition:absolute, ΠΈ научимся ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ элСмСнт ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΊΠ½Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, ΠΈ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ элСмСнта.

А Ρ‚Π°ΠΊ-ΠΆΠ΅ Ρ€Π°Π·Π±Π΅Ρ€Ρ‘ΠΌ нСсколько ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ³ΠΎ позиционирования.

Π’ Π½Π°Ρ‡Π°Π»Π΅ разбСрёмся, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΊΠ½Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.

Π­ΠΊΡ€Π°Π½Ρ‹ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΎΠ², ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅ высоту, ΠΈ ΡˆΠΈΡ€ΠΈΠ½Ρƒ. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‰Ρ‘Π½Π½Ρ‹ΠΉ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΊΠ½Π° Π’Π°ΡˆΠ΅Π³ΠΎ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π°, Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ…, с Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ экрана, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ смСстится с Ρ‚ΠΎΠ³ΠΎ мСста, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π’Ρ‹ Π΅ΠΌΡƒ ΠΎΡ‚Π²Π΅Π»ΠΈ Ρƒ сСбя.

Π—Π°Ρ‚ΠΎ, ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π½Π° Π·Π°Π΄Π°Π½Π½ΠΎΠΌ расстоянии ΠΎΡ‚ ΠΊΡ€Π°Π΅Π² ΠΎΠΊΠ½Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, Π΄Π°ΠΆΠ΅ Ссли ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ посСтитСля окаТСтся Π² Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π° большС, ΠΈΠ»ΠΈ мСньшС Π’Π°ΡˆΠ΅Π³ΠΎ.

ΠšΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ элСмСнта, ΠΏΡ€ΠΈ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠΌ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, Π·Π°Π΄Π°ΡŽΡ‚ΡΡ свойствами

topΒ Β β€” Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΡ‚ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ края экрана, Π΄ΠΎ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ края элСмСнта;

leftΒ Β β€” Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΡ‚ Π»Π΅Π²ΠΎΠ³ΠΎ края экрана, Π΄ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ края элСмСнта;

rightΒ Β β€” Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΡ‚ ΠΏΡ€Π°Π²ΠΎΠ³ΠΎ края экрана, Π΄ΠΎ ΠΏΡ€Π°Π²ΠΎΠ³ΠΎ края элСмСнта;

bottomΒ Β β€” Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΡ‚ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ края экрана, Π΄ΠΎ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ края элСмСнта;

top ΠΈ left ΠΈΠΌΠ΅ΡŽΡ‚ больший ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚, поэтому Π² случаС противорСчия right ΠΈ bottom ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ.

ЗначСния этих свойств ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ, Π² этом случаС элСмСнт смСщаСтся Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΡƒΡŽ сторону. Π’Π°ΠΊ ΠΆΠ΅ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΉΡ‚ΠΈ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ экрана.

ΠŸΡ€ΠΈ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠΌ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, элСмСнт ΠΊΠ°ΠΊ Π±Ρ‹ поднимаСтся Π½Π°Π΄ всСми Ρ‚Π΅Π³Π°ΠΌΠΈ, ΠΈ ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ нСзависимым (Ссли Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρƒ Π½Π΅Π³ΠΎ Π½Π΅Ρ‚ родитСля, Π½ΠΎ ΠΎΠ± этом Ρ‡ΡƒΡ‚ΡŒ Π½ΠΈΠΆΠ΅)

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΎΠ½ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Π² Ρ‚Π΅Ρ… ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π’Ρ‹ ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅. ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ‚Π΅Π³ΠΈ, Π΅Π³ΠΎ присутствия просто Π½Π΅ замСтят.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚Π°ΠΊΠΎΠ³ΠΎ позиционирования Π² ΠΏΡ€Π°Π²ΠΎΠΌ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΠ³Π»Ρƒ станицы, ΠΈ ΠΊΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ…ΠΎΡ‚ΡŒ элСмСнт ΠΈ нСзависимый, ΠΎΠ½ прокручиваСтся вмСстС со страницСй.

Π’ΠΎΡ‚ Π΅Π³ΠΎ ΠΊΠΎΠ΄:

<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8" />
<title>Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Π±Π΅Π· названия</title>
<style>
div{
position:absolute;
top:40px;
right:10px;
background:#21cccc;
width:200px;
padding:10px;
text-align:center;
border-radius:50px/20px;
box-shadow:5px 5px 3px 1px;
}
</style>
</head>
<body>
<div>ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ³ΠΎ позиционирования</div>
</body>
</html>

Π’Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, ΠΊΠΎΠ³Π΄Π° элСмСнт находится Π²Π½ΡƒΡ‚Ρ€ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ элСмСнта, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρƒ Π½Π΅Π³ΠΎ Π΅ΡΡ‚ΡŒ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ.

Π’ этом случаС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ происходит ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π³Ρ€Π°Π½ΠΈΡ† родитСля, ΠΏΠΎ Ρ€Π°Π½Π΅Π΅ описанному ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ. Π’ΠΎ Π΅ΡΡ‚ΡŒ вСрхняя Π³Ρ€Π°Π½ΠΈΡ†Π° элСмСнта, ΠΎΡ‚ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ родитСля, ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.

Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ³ΠΎ позиционирования рассмотрим, ΠΊΠ°ΠΊ ΡƒΠΊΡ€Π°ΡΠΈΡ‚ΡŒ ΡˆΠ°ΠΏΠΊΡƒ сайта Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΎΠΉ.

Допустим Ρƒ нас Π΅ΡΡ‚ΡŒ такая ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° для шапки сайта:

s14

И Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² Π½Π΅Ρ‘ Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠ³ΠΎ охотящСгося Ρ‡Ρ‘Ρ€Ρ‚ΠΈΠΊΠ°:

hortic

Π’Π°ΠΊ ΠΊΠ°ΠΊ шапка сайта размСщаСтся Π² Π±Π»ΠΎΠΊΠ΅ header, Ρ‚ΠΎ ΠΈ Π² ΠΊΠΎΠ΄Π΅ я ΡƒΠΊΠ°ΠΆΡƒ для ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ этот Π±Π»ΠΎΠΊ. А Π²ΠΎΠΎΠ±Ρ‰Π΅-Ρ‚ΠΎ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ дСйствиС ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ с Π»ΡŽΠ±Ρ‹ΠΌ Π±Π»ΠΎΠΊΠΎΠΌ.

<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8" />
<title>Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Π±Π΅Π· названия</title>
<style>
#header{ /*Π‘Π΅Π»Π΅ΠΊΡ‚ΠΎΡ€ шапки*/
background-image: url(images/s14.png); /*Π—Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅*/
background-repeat: no-repeat; /*Π—Π°ΠΏΡ€Π΅Ρ‚ повторСния*/
width: 570px; /*Π¨ΠΈΡ€ΠΈΠ½Π° Π±Π»ΠΎΠΊΠ° ΠΏΠΎ ΡˆΠΈΡ€ΠΈΠ½Π΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ*/
height: 170px; /*Высота Π±Π»ΠΎΠΊΠ° ΠΏΠΎ высотС ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ*/
}
img{ /*Π§Ρ‘Ρ€Ρ‚ΠΈΠΊ*/
position: absolute; /*ΠŸΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ, ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ родитСля*/
top: 30px; /*ΠšΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π° свСрху*/
left: 420px; /*ΠšΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π° слСва*/
}

</style>
</head>
<body>
<div>
<img src="images/hortic.gif">
</div>
</body>
</html>

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

ΠŸΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² шапкС сайта

Π‘ Ρ‚Π°ΠΊΠΈΠΌ ΠΆΠ΅ успСхом ΠΌΠΎΠΆΠ½ΠΎ вывСсти Ρ‡Ρ‘Ρ€Ρ‚ΠΈΠΊΠ° Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ Π±Π»ΠΎΠΊΠ° header.

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ left, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄ΠΎ 600px, ΠΈ посмотритС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²ΠΎ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ³ΠΎ позиционирования, Π² этом случаС Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ‡Ρ‘Ρ€Ρ‚ΠΈΠΊ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ΅ΡˆΠ°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ‚Π΅Π³Π°ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² шапкС сайта.

Π­Ρ‚ΠΎ ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго Π½Π°Π·Π²Π°Π½ΠΈΠ΅, ΠΈ ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС сайта, Π½Ρƒ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π΅Ρ‰Ρ‘, Ρ‚ΠΈΠΏΠ° адрСса ΠΈ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°.

Π•Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ³ΠΎ позиционирования, ΠΊΠΎΠ³Π΄Π° свойство psition:absolute задаётся ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ, ΠΈ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŽ ΠΈ элСмСнту.

Допустим Ρƒ Вас Π΅ΡΡ‚ΡŒ ΠΏΠ°ΠΏΠΊΠ° с фотографиями, ΠΈ Π²Π°ΠΌ врСмя ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½ΡƒΠΆΠ½ΠΎ быстро Π΅Ρ‘ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ.

Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ список Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΉ:

52

И просматриваСм:

ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π€ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ курсора ΠΌΡ‹ΡˆΠΈ Π½Π° Π½Π°Π·Π²Π°Π½ΠΈΠ΅ снимка.

Код:

<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8" />
<title>Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Π±Π΅Π· названия</title>
<style>
ul{ /*Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ список ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΊ*/
background: #fdeaa8;
padding: 5px;
border-radius: 5px;
box-shadow: 0px 0px 0px 2px #0ea8f4;
width: 150px; /* Π¨ΠΈΡ€ΠΈΠ½Π° Π±Π»ΠΎΠΊΠ°*/
list-style: none; /* Π£Π±ΠΈΡ€Π°Π΅ΠΌ ΠΌΠ°Ρ€ΠΊΠ΅Ρ€Ρ‹ списка*/
font-family: Arial, sans-serif;
font-size: 16px;
}
li p { /*ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ*/
position: absolute; /*ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ */
display: none; /* Π‘ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ*/
margin-left: 160px; /* Π‘Π΄Π²ΠΈΠ³Π°Π΅ΠΌ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ Π²ΠΏΡ€Π°Π²ΠΎ */
margin-top: -20px; /* Π‘Π΄Π²ΠΈΠ³Π°Π΅ΠΌ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ Π²Π²Π΅Ρ€Ρ… */
}
li img {
display: block; /*ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π±Π»ΠΎΡ‡Π½Ρ‹ΠΉ элСмСнт */
border-radius: 5px;
box-shadow: 0px 0px 0px 2px #0ea8f4;
}
li:hover p {
display: block; /* ΠŸΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ курсора отобраТаСтся ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ°*/
}
.col:hover{
color: #abaab4; /* ΠŸΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ курсора мСняСтся Ρ†Π²Π΅Ρ‚ тСкста*/
}
</style>
</head>
<body>
<ul>
<li>Мой дом
<p><img src="images/s8.jpg"> </p>
</li>
<li>Мой Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ
<p><img src="images/s9.jpg"></p>
</li>
<li>Моя собака
<p><img src="images/s10.png"></p>
</li>
</ul>
</body>
</html>

Π–Π΅Π»Π°ΡŽ творчСских успСхов.

ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π°

«КаТдой Ρ‚Π²Π°Ρ€Π΅ ΠΏΠΎ ΠΏΠ°Ρ€Π΅, Β» β€” ΠΏΠΎΠ΄ΡƒΠΌΠ°Π» ΡƒΡ‡ΠΈΡ‚Π΅Π»ΡŒ, глядя Π½Π° ΠΎΠΏΠΎΡΡ‚Ρ‹Π»Π΅Π²ΡˆΠΈΡ… Π΅ΠΌΡƒ ΡƒΡ‡Π΅Π½ΠΈΠΊΠΎΠ².

Как Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΈ тСкст Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π±Π»ΠΎΠΊ < < < Π’ Ρ€Π°Π·Π΄Π΅Π» > > > ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ (position:relative)
Β 

Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ: БСсплатныС HTML ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ Π½Π° русском ΠΎΡ‚ TemplateMonster

position | htmlbook.ru

Internet ExplorerChromeOperaSafariFirefoxAndroidiOS
6.0+8.0+1.0+4.0+1.0+1.0+1.0+1.0+

ΠšΡ€Π°Ρ‚ΠΊΠ°Ρ информация

ВСрсии CSS

CSS 1CSS 2CSS 2.1CSS 3

ОписаниС

УстанавливаСт способ позиционирования элСмСнта ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΊΠ½Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° Π²Π΅Π±-страницС.

Бинтаксис

position: absolute | fixed | relative | static | inherit

ЗначСния

absolute
Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ элСмСнт Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½, ΠΏΡ€ΠΈ этом Π΄Ρ€ΡƒΠ³ΠΈΠ΅ элСмСнты ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Π½Π° Π²Π΅Π±-страницС словно Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта ΠΈ Π½Π΅Ρ‚. ПолоТСниС элСмСнта задаСтся свойствами left, top, right ΠΈ bottom, Ρ‚Π°ΠΊΠΆΠ΅ Π½Π° ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ влияСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ свойства position Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта. Π’Π°ΠΊ, Ссли Ρƒ родитСля Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ position установлСно ΠΊΠ°ΠΊ static ΠΈΠ»ΠΈ родитСля Π½Π΅Ρ‚, Ρ‚ΠΎ отсчСт ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ вСдСтся ΠΎΡ‚ края ΠΎΠΊΠ½Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°. Если Ρƒ родитСля Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ position Π·Π°Π΄Π°Π½ΠΎ ΠΊΠ°ΠΊ fixed, relative ΠΈΠ»ΠΈ absolute, Ρ‚ΠΎ отсчСт ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ вСдСтся ΠΎΡ‚ края Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта.
fixed
По своСму Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡŽ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±Π»ΠΈΠ·ΠΊΠΎ ΠΊ absolute, Π½ΠΎ Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π½Π΅Π³ΠΎ привязываСтся ΠΊ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ свойствами left, top, right ΠΈ bottom Ρ‚ΠΎΡ‡ΠΊΠ΅ Π½Π° экранС ΠΈ Π½Π΅ мСняСт своСго полоТСния ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠ΅ Π²Π΅Π±-страницы. Π‘Ρ€Π°ΡƒΠ·Π΅Ρ€ Firefox Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ полосы ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ, Ссли ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ элСмСнта Π·Π°Π΄Π°Π½ΠΎ фиксированным, ΠΈ ΠΎΠ½ΠΎ Π½Π΅ помСщаСтся Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ Π² ΠΎΠΊΠ½ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°. Π’ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ Opera хотя ΠΈ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ полосы ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ, Π½ΠΎ ΠΎΠ½ΠΈ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ Π²Π»ΠΈΡΡŽΡ‚ Π½Π° ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ элСмСнта.
relative
ПолоТСниС элСмСнта устанавливаСтся ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΅Π³ΠΎ исходного мСста. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ свойств left, top, right ΠΈ bottom измСняСт ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ элСмСнта ΠΈ сдвигаСт Π΅Π³ΠΎ Π² Ρ‚Ρƒ ΠΈΠ»ΠΈ ΠΈΠ½ΡƒΡŽ сторону ΠΎΡ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ располоТСния.
static
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ. ИспользованиС свойств left, top, right ΠΈ bottom Π½Π΅ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΊΠ°ΠΊΠΈΠΌ-Π»ΠΈΠ±ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌ.
inherit
НаслСдуСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ родитСля.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

HTML5CSS2.1IECrOpSaFx

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>position</title>
  <style>
   .layer1 {
    position: relative; /* ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ */
    background: #f0f0f0; /* Π¦Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π° */
    height: 200px; /* Высота Π±Π»ΠΎΠΊΠ° */
   }
   .layer2 {
    position: absolute; /* ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ */
    bottom: 15px; /* ПолоТСниС ΠΎΡ‚ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ края */
    right: 15px; /* ПолоТСниС ΠΎΡ‚ ΠΏΡ€Π°Π²ΠΎΠ³ΠΎ края */
    line-height: 1px;
   }
  </style>
 </head>
 <body>
  <div>
   <div>
     <img src="images/girl.jpg" alt="Π”Π΅Π²ΠΎΡ‡ΠΊΠ°" />
   </div>
  </div>
 </body>
</html>

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° рис. 1.

Рис. 1. ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ свойства position

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½Π°Ρ модСль

[window.]document.getElementById(«elementID»).style.position

Π‘Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹

Π‘Ρ€Π°ΡƒΠ·Π΅Ρ€ Internet Explorer 6 Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ fixed Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚. Internet Explorer Π΄ΠΎ вСрсии 8.0 Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ inherit.

ΠŸΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ элСмСнтов — position: relative, absolute, fixed, sticky

НавСрняка Π²Ρ‹ ΡΠ»Ρ‹ΡˆΠ°Π»ΠΈ ΠΎ свойствС position, ΠΈ скорСй всСго, со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ absolute. Но ΠΏΡ€ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ этого свойства ΠΊ ΠΊΠ°ΠΊΠΎΠΌΡƒ Π»ΠΈΠ±ΠΎ элСмСнту ΠΌΠΎΠ³Π»ΠΈ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒΡΡ со странным Π΅Π³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ.

Π§Ρ‚ΠΎ касаСтся самого свойства position, Ρ‚ΠΎ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для всСх элСмСнтов ΠΎΠ½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ static, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ значСния:

position: static / relative / absolute / fixed / sticky

position: static / relative / absolute / fixed / sticky

Для 4-Ρ… послСдних Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ свойства position (Ρ‚.Π΅.. всСх, ΠΊΡ€ΠΎΠΌΠ΅ static) ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ свойств left — слСва ΠΈ right — справа (ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ), Π°Β  Ρ‚Π°ΠΊΠΆΠ΅ top — свСрху ΠΈ bottom — снизу (ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ):

#some { position: relative; left: 10%; top: 20px; } #temp { position: relative; right: 0; top: 2em; }

#some {

Β Β position: relative;

Β Β left: 10%;

Β Β top: 20px;

}

Β 

#temp {

Β Β position: relative;

Β Β right: 0;

Β Β top: 2em;

}

Π’Π°ΠΊΠΆΠ΅ для всСх ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΉ, ΠΊΡ€ΠΎΠΌΠ΅ static, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ свойство z-index, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ опрСдСляСтся Ρ†ΠΈΡ„Ρ€ΠΎΠΉ (0, -1, 10, 999) Π±Π΅Π· указания Π΅Π΄ΠΈΠ½ΠΈΡ†, Ρ‚.ΠΊ. это свойство ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Π½Π° ΠΊΠ°ΠΊΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ (ΠΈΠ»ΠΈ слоС) находится спозиционированный элСмСнт ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ элСмСнтами (Π²Ρ‹ΡˆΠ΅ ΠΈΠ»ΠΈ Π½ΠΈΠΆΠ΅). Π§Π΅ΠΌ мСньшС Ρ†ΠΈΡ„Ρ€Π°, Ρ‚Π΅ΠΌ Π½ΠΈΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ находится элСмСнт срСди сСбС ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… (Ρ‚.Π΅. Ρ‚Π΅Ρ… элСмСнтов, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… свойство positionΒ  ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ relative, absolute, fixed ΠΈΠ»ΠΈ sticky.Β  Для элСмСнтов с position: static свойства z-index ΠΈΠ»ΠΈ любая ΠΈΠ· ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ (left, right, top, bottom) Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΎΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹.

#card { position: absolute; top: 10px; left: 20px; z-index: 1; }

#card {

Β Β position: absolute;

Β Β top: 10px;

Β Β left: 20px;

Β Β z-index: 1;

}

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ с position: relative

Для Ρ‚Π°ΠΊΠΈΡ… элСмСнтов Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ мСняСтся Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π½Π΅ Π·Π°Π΄Π°Π½Ρ‹ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹. Π’.Π΅. ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π±Π»ΠΎΠΊΠΈ Π½Π΅ ΡΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ ΠΈ Π½Π΅ ΠΌΠ΅Π½ΡΡŽΡ‚ своСй ΡˆΠΈΡ€ΠΈΠ½Ρ‹ Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΠΈΠ»ΠΈ фиксированно ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… элСмСнтов.

Если Π²Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ top ΠΈ left с ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ значСниями, Ρ‚ΠΎ элСмСнт ΡΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒΡΡ Π²Π½ΠΈΠ· ΠΈ Π²ΠΏΡ€Π°Π²ΠΎ, с ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ значСниями — Π²Π²Π΅Ρ€Ρ… ΠΈ Π²Π»Π΅Π²ΠΎ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ своСго ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ полоТСния. МоТно ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ элСмСнт с собакой Π½Π° Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ΅, которая привязана ΠΊ ΠΊΠΎΠ»Ρ‹ΡˆΠΊΡƒ — Π±Π΅Π³Π°Ρ‚ΡŒ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ этого ΠΊΠΎΠ»Ρ‹ΡˆΠΊΠ° ΠΈ Π½Π° расстояниС, Π½Π΅ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°ΡŽΡ‰Π΅Π΅ Π΄Π»ΠΈΠ½Ρƒ Ρ†Π΅ΠΏΠΈ — для нашСго элСмСнта это расстояниС, Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚.

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° с position: relative, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΠΎΠ»Π·ΡƒΠ½ΠΊΠΈ ΠΈΠ»ΠΈ поля Π²Π²ΠΎΠ΄Π°. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°Ρ… left ΠΈ top измСнСния для right ΠΈ bottom Π½Π΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ — Ρ‚Π°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ ΠΏΡ€ΠΈ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘Π°ΠΌ элСмСнт смСщаСтся Π² Ρ€Π°Π·Π½Ρ‹Π΅ стороны ΠΎΡ‚ своСго ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ полоТСния, оставляя пустоС мСсто Ρ‚Π°ΠΌ, Π³Π΄Π΅ Π±Ρ‹Π» ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΈ Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡΡΡŒ Π½Π° ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ Π΄ΠΎ ΠΈ послС Π½Π΅Π³ΠΎ.

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ элСмСнты с position: relative Π±Π΅Π· Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ ΠΈΠ»ΠΈ с Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌΠΈ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ Π²Ρ‹Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΈΠ· ΠΎΠ±Ρ‰Π΅Π³ΠΎ, статичСского ΠΏΠΎΡ‚ΠΎΠΊΠ° элСмСнтов. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΎΠ½ΠΈ ΠΊΠ°ΠΊ Π±Ρ‹ ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π°ΡŽΡ‚ Π½ΠΎΠ²Ρ‹ΠΉ статус Π² Π³Π»Π°Π·Π°Ρ… Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, ΠΏΡ€ΠΈΠΏΠΎΠ΄Π½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ Π½Π°Π΄ своими сосСдями ΠΈ, Ρ‡Ρ‚ΠΎ самоС Π³Π»Π°Π²Π½ΠΎΠ΅, — ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€ΠΈ сСбя элСмСнты с position: absolute. Об этом Ρ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π½ΠΈΠΆΠ΅.

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ с position: absolute

ΠŸΡ€ΠΈ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠΌ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ элСмСнта Π±Π΅Π· указания ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ привязан своим Π»Π΅Π²Ρ‹ΠΌ ΠΊΡ€Π°Π΅ΠΌ ΠΊ Π»Π΅Π²ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, Π½ΠΎ Π΅Π³ΠΎ ΡˆΠΈΡ€ΠΈΠ½Π° измСнится: Ссли тСкста ΠΌΠ°Π»ΠΎ — ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡΡ, Ссли тСкста (ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°) ΠΌΠ½ΠΎΠ³ΠΎ, Ρ‚ΠΎ ΡˆΠΈΡ€ΠΈΠ½Π° Π±Π»ΠΎΠΊΠ° увСличится, ΠΈ ΠΎΠ½ «Π²Ρ‹Π»Π΅Π·Π΅Ρ‚» Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° справа.

Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ этому элСмСнту Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°Π΄Π°Π½Ρ‹ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, ΠΎΠ½ «ΡΠ±Π΅ΠΆΠΈΡ‚» ΠΈΠ· Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΈ размСстится ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ body, заняв ΠΏΡ€ΠΈ этом всС доступноС пространство Π²Π½ΡƒΡ‚Ρ€ΠΈ body, Ссли ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½ΠΎΠ΅ количСство ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°. Если ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° ΠΌΠ°Π»ΠΎ (1-2 слова, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€), Ρ‚ΠΎ Π±Π»ΠΎΠΊ «ΠΏΡ€ΠΈΠΌΠΎΡΡ‚ится» свСрху статичСского ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°, Π½Π΅ оставив ΠΈ слСда Ρ‚Π°ΠΌ, Π³Π΄Π΅ Π±Ρ‹Π» Π² ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ΅.

Π§Ρ‚ΠΎΠ±Ρ‹ «Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π±Π΅Π³Π»Π΅Ρ†Π°» ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŽ Π·Π°Π΄Π°Ρ‚ΡŒ свойство … position: relative, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Π±Π΅Π· указания ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ для Π½Π΅Π³ΠΎ. Π’ этом случаС ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π΄ΠΎΡ‡Π΅Ρ€Π½Π΅Π³ΠΎ элСмСнта Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, Ρ‡Ρ‚ΠΎ, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅.

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊ измСняСтся ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π²ΠΈΠ΄ Π±Π»ΠΎΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π½Π°Π·Π½Π°Ρ‡ΠΈΠ»ΠΈ свойство position: absolute. Для этого Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π²Π½ΠΈΠ·Ρƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ элСмСнт ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΠ» свою ΡˆΠΈΡ€ΠΈΠ½Ρƒ. Высота ΠΎΡΡ‚Π°Π»Π°ΡΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ Π·Π° счСт добавлСния ΠΊΠ½ΠΎΠΏΠΊΠΈ вмСсто Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°Π³Ρ€Π°Ρ„Π°. Π£Ρ‡Ρ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ для элСмСнта с position: absolute Π½ΠΈ ΠΎΠ΄Π½Π° ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π° Π½Π΅ Π·Π°Π΄Π°Π½Π°. Они добавятся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ Π½Π°Ρ‡Π½Π΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π·ΡƒΠ½ΠΊΠΈ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, для Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ всС 4 ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ (left, top, right, bottom).Β  Если ΠΈΡ… значСния Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡ΠΈΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Ρƒ, элСмСнт … растянСтся. НаТмитС Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π’сС ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π² 0» ΠΈ посмотритС Π½Π° ΡˆΠΈΡ€ΠΈΠ½Ρƒ элСмСнта. Она Π·Π°ΠΉΠΌΠ΅Ρ‚ всС доступноС пространство Π²Π½ΡƒΡ‚Ρ€ΠΈ body ΠΈΠ»ΠΈ элСмСнта-родитСля. ΠšΡΡ‚Π°Ρ‚ΠΈ, ΠΊΠ½ΠΎΠΏΠΊΠ° «Π’Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π² ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта» ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π²Π°ΠΌ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° Ρ€Π°Π·Π½ΠΈΡ†Ρƒ Π² расчСтС ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚. Π’ самом Π±Π»ΠΎΠΊΠ΅ Π΅ΡΡ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΠ° «Π£Π±Ρ€Π°Ρ‚ΡŒ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹», которая ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π² случаС слишком большой растяТки элСмСнта с  position: absolute.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ, Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅. ΠšΡ€Π°ΡΠ½ΠΎΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ Ρ€Π°ΠΌΠΊΠΎΠΉ Π² этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹Π΄Π΅Π»Π΅Π½Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ body, синСй Ρ‚ΠΎΡ‡Π΅Ρ‡Π½ΠΎΠΉ — ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта.

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ с position: fixed

Π­Ρ‚ΠΎ фиксированныС элСмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Π΅Π· указания ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ «ΠΏΡ€ΠΈΠ»ΠΈΠΏΠ°ΡŽΡ‚» ΠΊ Π»Π΅Π²ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° ΠΈ Π½Π΅ ΡΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠ΅ страницы. Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π·Π°Π΄Π°Π½Ρ‹, элСмСнт «ΠΎΡ‚крСпляСтся» ΠΎΡ‚ родитСля ΠΈ позиционируСтся ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΊΠ½Π° просмотра, Ρ‚.Π΅. для нас это ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΒ  body. ΠžΠΏΡΡ‚ΡŒ-Ρ‚Π°ΠΊΠΈ ΠΎΠ½ Π½Π΅ смСщаСтся ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠ΅ страницы, Ρ‚.ΠΊ. зафиксирован Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°Ρ….

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ синСму элСмСнту свойство position: fixed, Π½Π°ΠΆΠ°Π² Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ синСму Π±Π»ΠΎΠΊΡƒ position: fixed». Π”ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π²Ρ‹ Π½Π΅ Π½Π°Ρ‡Π°Π»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ этого элСмСнта с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠΎΠ»Π·ΡƒΠ½ΠΊΠΎΠ² ΠΈΠ»ΠΈ Ρ†ΠΈΡ„Ρ€, ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта. Но, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹ Π·Π°Π΄Π°Π»ΠΈ Π΄Π²Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, Π±Π»ΠΎΠΊ вырвСтся Π² ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° ΠΈ Π½Π΅ вСрнСтся Π²Π½ΡƒΡ‚Ρ€ΡŒ родитСля, Π΄Π°ΠΆΠ΅, Ссли Π²Ρ‹ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚Π΅ послСднСму position: relative. Π­Ρ‚ΠΎ Π²ΠΈΠ΄Π½ΠΎ ΠΏΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ Π½ΠΈΠΆΠ΅.

ΠžΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Π΅Π³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ Π±Π»ΠΎΠΊΡƒ: ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡˆΠΈΡ€ΠΈΠ½Ρ‹ ΠΈ высоты, растяТСниС ΠΏΡ€ΠΈ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ всСх ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚, Ссли значСния ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ Π½Π΅ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡Π°Ρ‚ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Ρƒ.


Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ красная Ρ€Π°ΠΌΠΊΠ° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ body, синяя — Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта.

ΠŸΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ с фиксированным ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ элСмСнта Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ элСмСнты с position: absolute ΠΈ fixed уходят ΠΏΠΎΠ΄ Ρ€Π°ΠΌΠΊΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° (элСмСнта), поэтому ΠΈΡ… часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ для создания Π²Ρ‹Π΅Π·ΠΆΠ°ΡŽΡ‰ΠΈΡ… мСню, Ρ„ΠΎΡ€ΠΌ, Π±Π°Π½Π½Π΅Ρ€ΠΎΠ² ΠΈ ΠΊΠ½ΠΎΠΏΠΎΠΊ для ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ Π²Π²Π΅Ρ€Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прячутся, ΠΊΠΎΠ³Π΄Π° Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹.

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ с position: sticky

Π’Π°ΠΊΠΈΠ΅ элСмСнты Π½ΡƒΠΆΠ½Ρ‹ для оформлСния содСрТания ΠΈΠ»ΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Π±Π»ΠΎΠΊΠΎΠ² Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Ρ‚ΠΎΠΉ ΠΆΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ. Они Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ Π²Ρ‹Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΈΠ· тСкста Π΄ΠΎ назначСния ΠΈΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚, Π·Π°Ρ‚ΠΎ послС указания, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ top, ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΎ значСния этой ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, «ΠΏΡ€ΠΈΠ»ΠΈΠΏΠ°ΡŽΡ‚» ΠΊ ΠΊΡ€Π°ΡŽ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΈ Π½Π΅ Π΄Π²ΠΈΠ³Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠ΅ страницы.

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ это Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄Π°Π²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ свойства, ΠΈ для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²Π΅Π½Π΄ΠΎΡ€Π½Ρ‹Ρ… прСфиксов:

#sticky{ position: -webkit-sticky; position: sticky; top: 10px; }

#sticky{

Β Β position: -webkit-sticky;

Β Β position: sticky;

Β Β top: 10px;

}

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ», Ρ€Π°Π·Π±ΠΈΡ‚Ρ‹ΠΉ Π½Π° нСсколько сСкций, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊΒ  ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Ρ‚ΠΈΠΏΠ° «Section 1» «ΠΏΡ€ΠΈΠ»ΠΈΠΏΠ°Π΅Ρ‚» ΠΊ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌΡƒ ΠΊΡ€Π°ΡŽ ΠΈΠ·-Π·Π° Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ Π΅ΠΌΡƒ свойства top: 0. ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π΅Π³ΠΎ смСняСт Section 2, «ΠΏΡ€ΠΈΠ»ΠΈΠΏΠ°Π΅Ρ‚» ΡƒΠΆΠ΅ этот Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ.

Код для Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² здСсь Ρ‚Π°ΠΊΠΎΠ²:

h3 { background-color: #fff; color: #ff9300; margin: 0; padding: 10px 0; position: -webkit-sticky; position: sticky; top: 0; }

h3 {

Β Β Β Β background-color: #fff;

Β Β Β Β color: #ff9300;

Β Β Β Β margin: 0;

Β Β Β Β padding: 10px 0;

Β Β Β Β position: -webkit-sticky;

Β Β Β Β position: sticky;

Β Β Β Β top: 0;

}

Π€ΠΎΠ½ΠΎΠ²Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ для Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π½ΡƒΠΆΠ΅Π½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΅Π³ΠΎ тСкст Π»ΡƒΡ‡ΡˆΠ΅ читался. Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΎΠ½ Π±Π΅Π»Ρ‹ΠΉ ΠΈ совпадаСт с Ρ†Π²Π΅Ρ‚ΠΎΠΌ Ρ„ΠΎΠ½Π° страницы. Π’Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ смысл ΡƒΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹Π΅ внСшниС отступы (margin: 0) ΠΈ вмСсто Π½ΠΈΡ… Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ (padding: 10px 0), Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ„ΠΎΠ½ΠΎΠ²Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ Π·Π°Π½ΠΈΠΌΠ°Π» большС пространства.

Бвойство position: sticky достаточно ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π΄Π»ΠΈΠ½Π½Ρ‹Ρ… статСй, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π½Π° части, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΏΠΎΠΊΠ° ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π΅Π³ΠΎ Π½ΡƒΠΆΠ½ΠΎ с ΠΎΡΡ‚ΠΎΡ€ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ·-Π·Π° Π½Π΅ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ½ΠΎ Π½Π° сайтС caniuse.com.

ИспользованиС свойства z-index

Π”ΠΎ этого ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΠΌΡ‹ Π½Π΅ рассматривали порядок налоТСния ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… элСмСнтов Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π°, Ρ‚.ΠΊ. Ρƒ нас Π±Ρ‹Π» Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ‚Π°ΠΊΠΎΠΉ элСмСнт Π² тСстовых Ρ„Π°ΠΉΠ»Π°Ρ…. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ситуация, ΠΊΠΎΠ³Π΄Π° Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΠΈΠ»ΠΈ фиксированно спозиционированных элСмСнтов, часто встрСчаСтся Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅.Β  Π’ΠΎΠ³Π΄Π° слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ свойство z-index, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ порядок налоТСния спозиционированных Π±Π»ΠΎΠΊΠΎΠ² Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π°. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ раскладка элСмСнтов опрСдСляСтся Π² основном Π² Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠΌ пространствС, Ρ‚.Π΅.Β  ΠΏΠΎ осям X ΠΈ Y, Ρ‚ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ налоТСния происходит ΠΏΠΎ оси Z, пСрпСндикулярной плоскости экрана. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΡ… Ρ‚Π°ΠΊΠΈΡ… элСмСнтов ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΊΠ°ΠΊ Π½ΠΈΠΆΠ΅, Ρ‚Π°ΠΊ ΠΈ Π²Ρ‹ΡˆΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π²Π΅Π±-страницы ΠΏΡ€ΠΈ Π·Π°Π΄Π°Π½Π½ΠΎΠΌ свойствС z-index. Рассмотрим Π΅Π³ΠΎ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅.

Бвойство z-index задаСтся Ρ†ΠΈΡ„Ρ€ΠΎΠΉ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ 0, ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΈΠ»ΠΈ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта (position: relative | absolute | fixed) свойство z-index ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ auto. Π’ этом случаС ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π² Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ΅ элСмСнт с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ свойством position ΠΈΠ· пСрСчислСнных Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ накладываСтся Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ. ΠŸΡ€ΠΈ явном ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ z-index Π² Π²ΠΈΠ΄Π΅ числа элСмСнт пСрСмСщаСтся Π²Ρ‹ΡˆΠ΅ ΠΈΠ»ΠΈ Π½ΠΈΠΆΠ΅ сосСдних элСмСнтов.

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅ прСдставлСны ΠΊΠ°Ρ€Ρ‚Ρ‹, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π·Π°Π΄Π°Π½ΠΎ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ left ΠΈ top Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π»ΠΈΡΡŒ Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π°. Π Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ° ΠΈ css-свойства этого ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Ρ‚Π°ΠΊΠΎΠ²Ρ‹:

<style> img { display: block; position: absolute; cursor: pointer; } #ten { left: 70px; top: -20px; } #jack { left: 50px; top: 30px; } #queen { left: 80px; top: 60px; } #king { left: 130px; top: 30px; } #ace { left: 110px; } </style> <img src=»img/diamonds_10.gif» alt=»10 of diamonds»> <img src=»img/diamonds_jack.gif» alt=»Jack of diamonds»> <img src=»img/diamonds_queen.gif» alt=»Queen of diamonds»> <img src=»img/diamonds_king.gif» alt=»King of diamonds»> <img src=»img/diamonds_ace.gif» alt=»Ace of diamonds»>

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

<style>

img {

Β Β Β Β Β Β Β Β display: block;

Β Β Β Β Β Β Β Β position: absolute;

Β Β Β Β Β Β Β Β cursor: pointer;

Β Β Β Β }

Β 

Β Β Β Β #ten {

Β Β Β Β Β Β Β Β left: 70px;

Β Β Β Β Β Β Β Β top: -20px;

Β Β Β Β }

Β 

Β Β Β Β #jack {

Β Β Β Β Β Β Β Β left: 50px;

Β Β Β Β Β Β Β Β top: 30px;

Β Β Β Β }

Β 

Β Β Β Β #queen {

Β Β Β Β Β Β Β Β left: 80px;

Β Β Β Β Β Β Β Β top: 60px;

Β Β Β Β }

Β 

Β Β Β Β #king {

Β Β Β Β Β Β Β Β left: 130px;

Β Β Β Β Β Β Β Β top: 30px;

Β Β Β Β }

Β 

Β Β Β Β #ace {

Β Β Β Β Β Β Β Β left: 110px;

Β Β Β Β }

</style>

<img src=»img/diamonds_10.gif» alt=»10 of diamonds»>

Β 

<img src=»img/diamonds_jack.gif» alt=»Jack of diamonds»>

Β 

<img src=»img/diamonds_queen.gif» alt=»Queen of diamonds»>

Β 

<img src=»img/diamonds_king.gif» alt=»King of diamonds»>

<img src=»img/diamonds_ace.gif» alt=»Ace of diamonds»>

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ всС ΠΊΠ°Ρ€Ρ‚Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ z-index: auto ΠΈ Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π² порядкС размСщСния Π² html-ΠΊΠΎΠ΄Π΅. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΠΎ любой ΠΊΠ°Ρ€Ρ‚Π΅ (ΠΎΠ½Π° ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Ρ‚ ΠΊΡ€Π°ΡΠ½ΡƒΡŽ ΠΎΠ±Π²ΠΎΠ΄ΠΊΡƒ) ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ свойство z-index с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠΎΠ»Π·ΡƒΠ½ΠΊΠ° ΠΈΠ»ΠΈ Ρ†ΠΈΡ„Ρ€ Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ ΠΏΠΎΠ»Π΅.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ z-index Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ доступ ΠΊ элСмСнту — Π²Ρ‹ ΡƒΠΆΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Π΅Π³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Если Π±Ρ‹ Π²Π½ΡƒΡ‚Ρ€ΠΈ этого элСмСнта Π±Ρ‹Π»ΠΈ ссылки, Π²Ρ‹ Π±Ρ‹ Π½Π΅ смогли Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΠΎ Π½ΠΈΠΌ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ значСния z-index Π½ΡƒΠΆΠ½ΠΎ с ΠΎΡΡ‚ΠΎΡ€ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ. Π’ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΊΠ»ΠΈΠΊΠΎΠΌ Π½Π° тСкстС «Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ auto для всСх ΠΊΠ°Ρ€Ρ‚», Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ состояниС элСмСнтам.

ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚ налоТСния (stacking context)

ИспользованиС z-index Π²Ρ€ΠΎΠ΄Π΅ Π±Ρ‹ Π½Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ°Π³Π°Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… слоТностСй. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡ… ΠΈ Π½Π΅ Π±Ρ‹Π²Π°Π΅Ρ‚. Однако Π² спСцификации Π΅ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ нюанс, связанный с Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠΌ контСкст налоТСния (stacking context). Π­Ρ‚ΠΎ концСпция Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ располоТСния html-элСмСнтов вдоль оси Z, пСрпСндикулярной ΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ, находящСмуся ΠΏΠ΅Ρ€Π΅Π΄ экраном. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ эти элСмСнты Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ мСсто ΠΏΠΎ порядку Π΄Ρ€ΡƒΠ³ Π·Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ, Π½ΠΎ Π΅ΡΡ‚ΡŒ ряд свойств, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ мСняСт ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ элСмСнта ΠΏΠΎ оси Z.

ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² любом мСстС Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° ΠΈ Π»ΡŽΠ±Ρ‹ΠΌ элСмСнтом, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ соотвСтствуСт ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ· пСрСчислСнных условий:

  • являСтся ΠΊΠΎΡ€Π½Π΅Π²Ρ‹ΠΌ элСмСнтом (html),
  • ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ (position:absolute)Β ΠΈΠ»ΠΈ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΒ (position:relative) с z-index Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΎΡ‚ "auto", ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ position: fixed
  • flex-элСмСнт с z-index ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΎΡ‚ Β "auto", Ρ‡Π΅ΠΉ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ элСмСнт ΠΈΠΌΠ΅Π΅Ρ‚ свойство display: flex|inline-flex,
  • элСмСнты с Β opacity мСньшС Ρ‡Π΅ΠΌΒ 1. (Π‘ΠΌ.Β the specification for opacity),
  • элСмСнты с Β transform ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΎΡ‚ «none»,
  • элСмСнты с mix-blend-mode Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΎΡ‚ «normal»,
  • элСмСнты с filter Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΎΡ‚ «none»,
  • элСмСнты с isolation установлСнным Π² Β «isolate»,
  • Ссли ΠΌΡ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ элСмСнту Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Β Β will-changeΒ ΠΏΡ€ΠΈ этом Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ Π΅ΠΌΡƒ значСния (Π‘ΠΌ. эту ΡΡ‚Π°Ρ‚ΡŒΡŽ)
  • элСмСнты с -webkit-overflow-scrolling установлСным Π²Β «touch»

Π’ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ касаСтся z-index, контСкст налоТСния Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΌΡƒ элСмСнту ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· пСрСчислСнных свойств, порядок налоТСния сосСдних элСмСнтов нСсколько измСнится ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ Ρƒ Π½ΠΈΡ… Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… элСмСнтов с ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ.

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅ Ρƒ нас Π΅ΡΡ‚ΡŒ нСсколько элСмСнтов с ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ (position: relative) ΠΈΠ»ΠΈ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΌ (position: absolute) ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ. Π Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ° этого ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Ρ‚Π°ΠΊΠΎΠ²Π°:

<div>div#1 with position:relative <br> z-index: 5 </div> <div>div#2 with position: absolute <br> z-index: auto <div>div#4 with position: relative; <br>z-index: 6</div> <div>div#5 with position: absolute; <br>z-index: 3</div> <div>div#6 with position: relative; <br>z-index: 2</div> <div>div#7 with position: relative; <br>z-index: -1</div> </div> <div>div#3 with position:relative <br> z-index: 2 </div>

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

<div>div#1 with position:relative

Β Β Β Β <br> z-index: 5

</div>

<div>div#2 with position: absolute

Β Β Β Β <br> z-index: auto

Β Β Β Β <div>div#4 with position: relative;

Β Β Β Β Β Β Β Β <br>z-index: 6</div>

Β Β Β Β <div>div#5 with position: absolute;

Β Β Β Β Β Β Β Β <br>z-index: 3</div>

Β Β Β Β <div>div#6 with position: relative;

Β Β Β Β Β Β Β Β <br>z-index: 2</div>

Β Β Β Β <div>div#7 with position: relative;

Β Β Β Β Β Β Β Β <br>z-index: -1</div>

</div>

<div>div#3 with position:relative

Β Β Β Β <br> z-index: 2

</div>

ΠšΠ°ΠΆΠ΄ΠΎΠΌΡƒ div-Ρƒ Π² этой Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ΅ Π·Π°Π΄Π°Π½ z-index. ВСстовым элСмСнтом Ρƒ нас являСтся div#2, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ z-index НЕ Π·Π°Π΄Π°Π½, Ρ‚.Π΅. ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ auto ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Π–Π΅Π»Ρ‚Ρ‹ΠΉ div#4 с z-index:6, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ Π²Π½ΡƒΡ‚Ρ€ΠΈΒ  div#2 ΠΊΠ°ΠΊ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ элСмСнт, сСйчас накладываСтся Π½Π° Π·Π΅Π»Π΅Π½Ρ‹ΠΉ div#1 с z-index:5, Ρ‚.ΠΊ. Π΅Π³ΠΎ Ρ†ΠΈΡ„Ρ€Π° 6 ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ высокоС располоТСниС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта ΠΏΠΎ оси Z ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ†ΠΈΡ„Ρ€ΠΎΠΉ 5. Однако стоит Π·Π°Π΄Π°Ρ‚ΡŒ div#2 свойство z-index: 1 ΠΈΠ»ΠΈ 2 — ΠΈ Π΅Π³ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ элСмСнты спрячутся ΠΏΠΎΠ΄ Π·Π΅Π»Π΅Π½Ρ‹Π΅ Π±Π»ΠΎΠΊΠΈ, Ρ‚.ΠΊ. контСкст налоТСния сСйчас ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Π΅Ρ‚ z-index Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта Π² ряду с Π΅Π³ΠΎ сосСдними — это div#1 ΠΈ div#3.

Π’Ρ‚ΠΎΡ€ΠΎΠΉ способ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ контСкст налоТСния div#2 — это Π·Π°Π΄Π°Ρ‚ΡŒ этому div-Ρƒ свойство opacity < 1 ΠΏΡ€ΠΈ стандартном Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ свойства z-index: auto.Β  Π’ нашСм ΠΏΡ€ΠΈΠΌΠ΅ opacity ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ΡΡ Π΄ΠΎ значСния 0.7, Ρ‡Ρ‚ΠΎΠ±Ρ‹ это Π±Ρ‹Π»ΠΎ Ρ‡Π΅Ρ‚ΠΊΠΎ Π²ΠΈΠ΄Π½ΠΎ, хотя достаточно Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ ΠΈ 0.99, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π΅ отличаСтся ΠΎΡ‚ 1.

ВсС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ значСния z-index для div#2 ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°ΡŽΡ‚ Π΅Π³ΠΎ Π²Ρ‹ΡˆΠ΅ ΠΈΠ»ΠΈ ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ Π½ΠΈΠΆΠ΅ Π·Π΅Π»Π΅Π½Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ², Π½ΠΎ всС Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ Π² Π½Π΅Π³ΠΎ элСмСнты ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ своС располоТСниС ΠΏΠΎ оси Z ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π°, Π½ΠΎ Π½Π΅ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ сосСдних элСмСнтов родитСля.

Бсылка ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ Π½Π° developer.mozilla.org

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ΠΎΠ²: 476

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *