Привет назначил фиксированную позицию на div, вложенном в другой div. Но я не могу заставить его реагировать на размер дисплея. Я хочу, чтобы #fixed div оставался фиксированным в правой части моей страницы и сохранял ту же позицию по размерам дисплея.
html form
<div id="main">
<div id="fixed"></div>
</div>
css
#main {
position:relative;
margin: 0 auto;
}
#fixed {
position:fixed;
left: 80%;
top: 40%;
}
Вы вопрос не очень ясный, но я попробую ответить...
Если вы хотите, чтобы он "сохранял ту же позицию по размерам дисплея", вы не должны устанавливать относительные размеры (%), но фиксированные размеры (в пикселях).
Если ваше правило CSS left: 80%
, ваш div
будет перемещен с левого края экрана на эквивалент 80% ширины окна. Если окно шириной 500 пикселей, то область между вашим div
и левым краем будет шириной 400 пикселей.
Но если вы всегда хотите иметь ту же позицию независимо от размера отображаемого размера пользователя, это будет работать:
#fixed {
position:fixed;
right: 20px; /* Or whatever position you want */
top: 50px;
}
Кстати, я предлагаю вам изменить "left" на "right", потому что вы пытаетесь поместить свой div
рядом с правой стороной страницы.
Если вы явно задаете процентную ширину для внешнего div, #main, вы должны быть настроены.
#main { width: 100%; position: relative; margin: 0 auto; }