Если ваше фоновое изображение всегда имеет одинаковое соотношение сторон, вы можете сделать высоту контейнера пропорциональной ширине фонового изображения.
Скажем, ваше фоновое изображение 2000 x 1000 px. Скажем, экран в настоящее время имеет ширину 800 пикселей. Затем вы хотите, чтобы контейнер с фоновым изображением был на высоте 400 пикселей. Для достижения этого без установки жестко закодированных точек останова вы можете использовать «трюк для заполнения». Если вы установите прописку (сверху или снизу) дочернего элемента в процентах, она вычисляет высоту в процентах от ширины родительского элемента. Поэтому, если вы установите верхнюю часть контейнера на 50%, она будет в два раза выше, чем родительский элемент. Таким образом, в случае 2000 x 1000 px: 1000/2000 * 100 = 50%.
.parent_w_bg {
background-image: url(...);
width: 100%;
}
.container {
width: 500px;
margin: 0 auto;
padding-top: 50%; // Assuming the background image's aspect ratio is 1:2
}
<div class="parent_w_bg">
<div class="container">
Header and button etc.
</div>
</div>
В таком случае вы должны поместить контейнер относительно и его детей абсолютным, например заголовок, с верхним значением, а кнопка с нижним значением.
Вот простой скрипкой: https://jsfiddle.net/mmcc5rnk/
Использование различных размеров изображений для различных точек останова может быть полезным, но и проблематично. Зависит от вашего конкретного случая, размера вашего изображения (ов) и количества точек останова, которые вы хотите использовать (и различий). Использование разных изображений в соответствии с некоторыми заданными точками прерывания отлично и может использоваться независимо от реализации.
Ваше решение https://jsfiddle.net/bhushanwagh/xr1L5yob/ –
Чтобы дать Вам большой ответ, это может помочь нам, если у вас есть взгляд на [просить], если у вас нет» t уже. Это может быть полезно, если вы можете предоставить [mcve]. – Mat