我想像this一样缩放文字。但在本文中不透明度:0。我没有隐藏文本的文本不透明度:1并且我不希望框像那样只有文本可以缩放
我尝试了以下但没有成功:
ul li {
transform: scale(10);
transition: all 0.3s ease-in-out 0.2s;
}
ul li:hover {
transform: translateY(100px);
transition: all 0.3s ease-in-out 0.1s;
}
<ul>
<li>Text effect</li>
<li>Text effect</li>
</ul>
答案 0 :(得分:4)
尝试这样的事情:
HTML
<ul>
<li><p>Text effect</p></li>
<li><p>Text effect</p></li>
</ul>
的CSS
ul li{
width: 100px;
height: 100px;
background: red;
color: white;
display: inline-block;
float: left;
margin: 10px;
overflow: hidden;
text-align: center;
}
ul li p {
opacity: 0;
transform: scale(10);
transition: all 0.3s ease-in-out 0.2s;
}
ul li:hover p{
opacity: 1;
transform: scale(1);
transition: all 0.3s ease-in-out 0.1s;
}
答案 1 :(得分:2)
像你一样使用transform: scale()
是实现这一目标的好方法。但是,您需要在:hover
时将比例重置为正常值。
由于li
默认为display: list-item
,因此它们占用了可用宽度的100%。因此,当文本向左对齐时,在li
的中心进行缩放将使文本消失。将文字换成span
display: inline-block
,以便放大文字的中心。
此外,您链接的网站也有文字淡入/淡出。将opacity: 0
添加到span
以使其不可见,然后将其转换为opacity: 1
上的:hover
以实现淡入/淡出效果。
也可能不需要transform: translateY(100px)
,transition
中也不存在重复的:hover
属性。
opacity
,没有框,左边是动画
ul li {
background: lightgrey;
list-style: none;
margin: 5px 0;
}
ul li span {
position: relative;
left: -100%;
font-size: 20px;
transform: scale(10);
transition: all 0.3s ease-in-out 0.2s;
}
ul li:hover span {
left: 0;
transform: scale(1);
}
span {
display: inline-block;
}
<ul>
<li><span>Text effect</span></li>
<li><span>Text effect</span></li>
<li><span>Text effect</span></li>
<li><span>Text effect</span></li>
</ul>
opacity
,框。如附件链接
ul li {
list-style: none;
width: 200px;
height: 200px;
border: 5px solid black;
margin: 10px;
background: #FAEBD9;
overflow: hidden;
float: left;
}
ul li span {
font-size: 20px;
opacity: 0;
transform: scale(10);
transition: all 0.3s ease-in-out 0.2s;
}
ul li:hover span {
opacity: 1;
transform: scale(1);
}
span {
display: inline-block;
}
<ul>
<li><span>Text effect</span></li>
<li><span>Text effect</span></li>
<li><span>Text effect</span></li>
<li><span>Text effect</span></li>
</ul>
答案 2 :(得分:1)
您可以执行以下操作:
<style>
#test-text:hover {
font-size: 20px;
}
</style>
<body>
<p id=test-text>TEST</p>
</body>