Довольно часто упускают из виду, что процентные свойства элементов в вертикальном направлении относятся к их содержащему блоку width
, а не только к горизонтальным.
Это означает, что если вы установили что-то в margin-top:10%;
, оно будет иметь верхний запас, эквивалентный 10% от его ширины блока.
Вы можете легко видеть, что in this jsFiddle. Попробуйте изменить размер панели вывода по вертикали и горизонтали, и обратите внимание, какое изменение размера делает внутренний блок перемещающимся вверх и вниз.
Вы можете использовать vw
и vh
и если ваши цели браузера допускают, я бы рекомендовал. Но если вы не можете их использовать, вам не нужно сразу использовать Javascript. Слишком много людей пишут сразу для Javascript, когда он открывает совершенно новую банку червей (например, что, если браузер изменяет размер?), Особенно если немного творческого использования CSS может вытащить вас из липкого пятна в любом случае.
Что означает ширина 1 *? –
опубликуйте какой-нибудь код или покажите jsfiddle. –
вам нужно будет использовать javascript для этого – kennypu