使用CSS Transitions实现圆形悬停效果的示例代码

2020-04-27 07:39:35易采站长站整理

transform: scale(1);
}

示例3

在这个例子中,我们将使用旋转。 结构将与前两个示例略有不同,因为我们需要将".ch-thumb"添加为第二个分区。 所以列表项看起来如下:


<li>
<div class="ch-item">
<div class="ch-info">
<h3>Music poster</h3>
<p>by Jonathan Quintin <a href="http://drbl.in/eGjw">View on Dribbble</a></p>
</div>
<div class="ch-thumb ch-img-1"></div>
</div>
</li>

".ch-item"的样式将与之前一样(带有微妙的阴影):


.ch-item {
width: 100%;
height: 100%;
border-radius: 50%;
position: relative;
cursor: default;
box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}

".ch-thumb"元素将具有特定的变换原点(位于右中间的某个位置)和过渡。 这将是我们想要在悬停时向下旋转的元素,以便它显示".ch-info"元素:


.ch-thumb {
width: 100%;
height: 100%;
border-radius: 50%;
overflow: hidden;
position: absolute;
box-shadow: inset 0 0 0 15px rgba(255,255,255, 0.5);
transform-origin: 95% 40%;
transition: all 0.3s ease-in-out;
}

使用伪类:创建一个带有径向渐变的小黄铜紧固件:


.ch-thumb:after {
content: '';
width: 8px;
height: 8px;
position: absolute;
border-radius: 50%;
top: 40%;
left: 95%;
margin: -4px 0 0 -4px;
background: radial-gradient(ellipse at center, rgba(14,14,14,1) 0%,rgba(125,126,125,1) 100%);
box-shadow: 0 0 1px rgba(255,255,255,0.9);
}

让我们为每个".ch-thumb"元素定义背景图像:


.ch-img-1 {
background-image: url(../images/7.jpg);
z-index: 12;
}

.ch-img-2 {
background-image: url(../images/8.jpg);
z-index: 11;
}

.ch-img-3 {
background-image: url(../images/9.jpg);
z-index: 10;
}

".ch-info"元素的样式如下:


.ch-info {
position: absolute;
width: inherit;
height: inherit;
border-radius: 50%;
overflow: hidden;
background: #c9512e url(../images/noise.png);
box-shadow: inset 0 0 0 5px rgba(0,0,0,0.05);
}

文本元素将按以下方式定位和设置样式:


.ch-info h3 {
color: #fff;
text-transform: uppercase;