我想让我的卡有两个方面的正面/背面。事情很简单,但棘手的灵活布局。它甚至可以把这种逻辑上的灵活布局?我们如何管理?
这是我的代码片段codepen link。这是双面效果的示例,它看起来像codepen link
main {
width: 80%;
height: 100vh;
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-evenly;
margin: 30px auto;
padding: 30px 0;
}
.single-box {
flex-direction: column;
align-self: center;
width: 270px;
box-shadow: 0 0 10px rgba(0, 0, 0, .5);
border-radius: 10px 10px 10px 10px;
margin: 30px 0;
overflow: hidden;
/* max-height: 100%; */
}
.header-area.img1 {
background-image: url(https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSjNSVKfWJh2gqMd3ClC-pfA8MX9X34oOP8rX-psZvYcNrrZA2l1AGCP_mIG0MVZl6hj6A&usqp=CAU);
object-fit: contain;
width: 100%;
}
.header-area {
background-size: cover;
/* padding: 100px 30px; */
height: 200px;
background-position: center center;
border-radius: 10px 10px 50% 0;
/* box-shadow: 0 0 10px rgba(0, 0, 0, .5); */
transform: scale(1);
transition: all .3s;
/* position: relative; */
/* max-height: 100%; */
/* overflow: hidden; */
}
.header-area.img1:hover {
transform: scale(1.3);
transition: all .5s;
cursor: pointer;
}
.body-area {
padding: 10px 15px;
/* overflow: hidden; */
z-index: 1;
position: relative;
background-color: white;
}
<main>
<div class="single-box">
<div class="header-area img1"></div>
<div class="body-area">
<h3>Banana</h3>
<p>
Lorem ipsum
</p>
</div>
</div>
<div class="single-box">
<div class="header-area img1"></div>
<div class="body-area">
<h3>Banana</h3>
<p>
Lorem ipsum
</p>
</div>
</div>
</main>
1条答案
按热度按时间oknrviil1#
我对这个问题的看法如下:
添加一个层次在您的html,以避免任何问题时,翻转卡。
使用你的结构,它将是:
使用这种结构,你必须强制每个
.single-box
的最小尺寸,以避免翻转过程中的任何变形,但由于没有设计规则(背景色,边框,...),这只是一个结构块。然后你可以根据自己的需要设计.single-box_inner
(将有实际的卡)。然后你只需要使用一点JS来切换类(如果你需要像你的第一个链接一样在点击时翻转),并用CSS来处理动画。
希望有帮助。