У меня есть список фигур, содержащих фоновые изображения. Примерно так:
<ul>
<li>
<figure style="background-image: url(...);"></figure>
</li>
<li>
<figure style="background-image: url(...);"></figure>
</li>
<li>
<figure style="background-image: url(...);"></figure>
</li>
</ul>
Для каждого из этих изображений background-size
установлено на cover
и background-attachment
установлено на fixed
.
figure {
width: 100%;
height: 100%;
background-size: cover;
background-attachment: fixed;
}
Когда каждая из фигур занимает всю область просмотра, это работает нормально, но если есть какое-либо смещение, фоновое изображение обрезается.
Насколько я могу судить, это сделано намеренно (https://developer.mozilla.org/en-US/docs/Web/CSS/background-size#Values).
Я бы хотел, чтобы изображения обрезались по вертикали или по горизонтали, но не по обоим сразу, а центрировались по размеру самой фигуры.
Я знаю, что есть решения для javascript, но есть ли способ сделать это с помощью CSS?
Вот рабочий пример: http://codepen.io/Godwin/pen/KepiJ