实现卡卷效果的方法是使用CSS中的transform属性和transition属性,具体代码如下:
.card { width: 200px; height: 300px; border: 1px solid #ccc; position: relative; overflow: hidden; } .card .content { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: #fff; padding: 20px; transform: translateY(100%); transition: transform 0.5s; } .card:hover .content { transform: translateY(0); }
代码中,大家首先先定义一个卡片的样式,设置它的宽度、高度和边框。卡片内部的内容布局大家使用绝对定位,使其覆盖整个卡片区域,但是初始时,把内容区域下移100%的高度,也就是隐藏掉内容。这里需要注意的是,卡片和内容区域都需要使用相对定位的卡片样式进行包裹。
接下来,大家使用:hover伪类,当鼠标移到卡片上时,让内容区域下移0的高度,也就是显示出来。使用CSS中的transition属性,使动画效果更流畅。
最后,大家就可以得到一个基本的卡卷效果。如果需要进行更高级的设置,比如动态生成卡片或者添加内容交互等,可以根据实际需要进行代码调整。