我想做一个类似于彭罗斯楼梯的效果,你element-1
在上面element-2
但在element-3
女巫后面,据element-2
我所知有点复杂。
我有这个代码
<body>
<div class="parent">
<div id="s1" class="square"><div></div></div>
<div id="s2" class="square"><div></div></div>
</div>
</body>
.parent {
width: 300px;
height: 300px;
border-radius: 25px;
background: orange;
position: relative;
}
.square{
display: inline-block;
position: absolute;
z-index: 10;
}
#s1{
--Color: teal;
left: calc(100px);
top: calc(100px);
transform: rotate(45deg);
}
#s2{
--Color: cornflowerblue;
right: calc(100px);
bottom: calc(100px);
transform: rotate(-135deg);
}
.square>div{
width: 50px;
height: 50px;
border-radius: 10px;
background: var(--Color);
opacity: 1;
}
.square>div:before{
content: " ";
display: inline-block;
position: relative;
width: 100px;
height: 8px;
background: var(--Color);
background: #000;
z-index: -1;
top: 5px;
left: 5px;
}
代码有两个元素都可以before
到达另一个元素,这是我的问题的简化版本,但我想要before
两个元素的背后。
我还需要考虑其他一些限制,这应该是响应式的,所以我不能轻易摆脱设定的宽度。另外,我试图让它尽可能地保持原样。
编辑1:
我想达到这个 效果