我试图弄清楚卡片刷卡/翻转效果是如何完成的,如本网站所示:http ://catalystconference.com/ (在“我们的收藏夹”和类似部分下)。这可以仅使用 CSS 来完成吗?
问问题
3939 次
1 回答
1
不要依赖文本缩进,因为它会强制浏览器实际呈现您指定的负空间。相反,尝试使用绝对定位和左/上/下/右属性来帮助定位(并随后显示/隐藏)隐藏的窗格。
对于您的 HTML,我冒昧地在您的 : 中创建了两个窗格<div>
:一个可见的和一个隐藏的。
<div>
<p class="pane-visible">Visible pane.</p>
<p class="pane-hidden">Hidden pane.</p>
</div>
CSS 方面,可见窗格按原样定位,但隐藏窗格绝对定位(但相对于其父级),距离顶部 100%(因此位于父容器的底部,但不可见)。诀窍是在父级悬停时更改top
隐藏窗格的属性,将其带到顶部。使用 CSS3 属性可以轻松完成动画:transition
.
div {
overflow: hidden;
position: relative;
width: 300px;
height: 300px;
}
div > p[class|="pane"] { /* Targets element with the class "pane-" (notice the dash) */
box-sizing: border-box; /* Forces width and height to be at 300px even with padding */
padding: 1em;
width: 300px;
height: 300px;
}
div > p[class*="hidden"] {
position: absolute;
top: 100%;
left: 0;
transition: all .25s ease-in-out; /* You might want to add vendor prefixes */
}
div:hover > p[class*="hidden"] {
top: 0;
}
这是我的概念验证小提琴:http: //jsfiddle.net/teddyrised/TTv4q/2/
于 2013-10-12T15:06:27.227 回答