在 Tailwind 中如何从中心悬停展开?

问题描述 投票:0回答:1

在 CSS 中,我可以通过悬停扩展:

a {
  --border-color: green;
  --border-width: 5px;
  --bottom-distance: 0px;
  
text-decoration:none;
background-position: 50% calc(100% - var(--bottom-distance));
  color: #666;
  display: inline-block;
  background-image: linear-gradient(var(--border-color), var(--border-color));
  background-size: 0% var(--border-width);
  background-repeat: no-repeat;
  transition: background-size 0.3s;
  margin: 5px 0;
}

a:hover {
  background-size: 100% var(--border-width);
}
<a href="#">Expand from center</h1><br/>

我一直在阅读以下文档:

<script src="https://cdn.tailwindcss.com/3.4.3"></script>

<a href="#" class="group text-sm">
Expand from center
<span class="block mt-4 max-w-0 group-hover:max-w-full transition-all duration-500 h-0.5 bg-green-600"></span>
</a>

如何在 Tailwind CSS 中从中心展开悬停?

hover tailwind-css
1个回答
0
投票

不要过渡

max-width
,而是考虑过渡
transform: scaleX()
。这样的性能更高,因为浏览器每帧执行的工作量比
max-width
少。此外,
transform: scaleX()
还有一个额外的好处,即
transform-origin
可以与它配合使用,从而也解决您的问题:

<script src="https://cdn.tailwindcss.com/3.4.5"></script>

<a href="#" class="group text-sm">
  Expand from center
  <span class="block mt-4 scale-x-0 group-hover:scale-x-100 transition-transform duration-500 h-0.5 bg-green-600 origin-center"></span>
</a>

© www.soinside.com 2019 - 2024. All rights reserved.