【发布时间】:2020-02-24 08:42:35
【问题描述】:
当我悬停按钮时我会尝试一些东西。目前这是我的代码
.btn {
border:solid 1px purple;
color:purple;
background: white;
padding:10px 15px;
text-align: center;
transition: .5s;
}
.btn:hover{
letter-spacing: 1px;
}
<button class="btn">My bouton</button>
问题是,当我将按钮悬停时,文本会展开,按钮也会在右侧展开。 我想让按钮不展开(保持原始大小),只有文本里面展开和居中,没有放置宽度大小,因为我希望它作为组件(我永远不会知道文本的大小。) 仅在 css 中。
我找到的唯一一种方法是添加一个过来的数据属性,但我不喜欢这种方式,因为我重复了我的文本 2 次。
对你来说,可能只有 CSS 吗?如果是的话怎么办?非常感谢
【问题讨论】:
-
您可以这样做的一种方法是使用 jQuery / javascript。你对这个想法持开放态度吗?因为您需要计算每个动态内容的宽度,因此,javascript / jQuery 将使用最少的代码更容易。
-
准确地说,用javascript我可以做到,如果可能的话,我想只在css中做
-
当您必须计算当前宽度时,不要认为 css 可能。如果你想在 jquery 中得到答案,我可以发布它。我已经对其进行了测试,并且可以在 Jquery 中使用。但由于它只有 CSS,我认为它不可能。