【发布时间】:2014-05-23 15:46:30
【问题描述】:
我有一系列使用 flexbox 排列的缩放三角形,它们会根据窗口的拉伸方式变得越来越小。我想让这些覆盖在图像的底部,给它一种撕纸或山峰的效果。他们将覆盖的图像缩放以适应窗口,并且三角形必须跟随图像,随着窗口放大和缩小。
我在想出解决这个问题的方法时遇到了很多困难,我需要一些帮助。
这就是我希望三角形和图像的外观和相互关联的方式,此屏幕截图中的三角形为黑色,图像为灰色。
http://i.imgur.com/KkXq9pc.png
这是项目的 jsfiddle 链接:http://jsfiddle.net/wD2r2/
CSS:
.triangle-up {
margin: 0 auto;
width: 50%;
height: 0;
padding-left:50%;
padding-bottom: 50%;
overflow: hidden;
}
.triangle-up:after {
content: "";
display: block;
width: 0;
height: 0;
margin-left:-9999px;
border-left: 9999px solid transparent;
border-right: 9999px solid transparent;
border-bottom: 9999px solid #000000;
}
.triangle-container {
display: flex;
}
.overlay {
top: -100px;
left:0px;
right:0px;
z-index: 1;
position: relative;
margin-top: 10px;
}
HTML:
<div>
<div>
<img style="width:100%;" src="images/treeline.jpg" />
</div>
<article class="overlay">
<div class="triangle-container">
<article>
<div class="triangle-up" />
</article>
<article>
<div class="triangle-up" />
</article>
<article>
<div class="triangle-up" />
</article>
<article>
<div class="triangle-up" />
</article>
<article>
<div class="triangle-up" />
</article>
<article>
<div class="triangle-up" />
</article>
</div>
</article>
</div>
我想避免三角形相对于图像向上或向下或沿窗口两侧移动的效果。我一直在努力让它一直沿着底部运行并适当地扩展,但没有运气。
非常感谢。
【问题讨论】:
-
看你的 jsfiddle 是你想要的
标签: css image html overlay flexbox