【发布时间】:2014-03-14 05:19:55
【问题描述】:
我有一个包含背景图像的数字列表。类似于以下内容:
<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
【问题讨论】:
-
仅在演示中被水平剪辑。你还有什么意思?
-
@ZachSaucier,对我来说,它在 Chrome 和 Firefox 中被水平和垂直剪辑。看看地图,如果你知道美国应该是什么样子,就没有新英格兰、佛罗里达或西部各州。
-
(如果您在相对较小的高度观看)
标签: css background-image background-attachment background-size