gpt4 book ai didi

css - 为什么这个 CSS 过渡在 anchor 内的 SVG 上不起作用

转载 作者:技术小花猫 更新时间:2023-10-29 11:13:47 25 4
gpt4 key购买 nike

我正在尝试转换嵌入式 SVG 对象的填充和路径,但这似乎不起作用(代码笔 here ):

SVG:

<a class="simple-link svg-link" href="">
Some Text
<svg version="1.1" id="next-page-icon" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 25 25" enable-background="new 0 0 25 25" xml:space="preserve" preserveAspectRatio="xMinYMin meet">
<circle class="the-background" cx="12.5" cy="12.5" r="12.5"/>
<g>
<path class="the-icon" d="M16.088,11.421l-3.404,3.362l-3.418-3.362v-1.204l3.418,3.444l3.404-3.444V11.421z"/>
</g>
</svg>
</a>

Sass:

a
{
width:200px;
height:200px;
overflow: hidden;

@include transition(color, 1s);
@include transition(background, 1s);

svg
{
width:200px;
height:200px;

.the-background
{
@include transition(fill, 1s);
fill: grey;
}

.the-icon
{
@include transition(fill, 2.5s);
}
}

&:hover
{
color: red;
background: black;
.the-background
{
fill: black;
}

.the-icon
{
fill: red;
}

}
}

为什么悬停时填充没有动画?

最佳答案

我解决这个问题的方法是将 fill="currentColor" 放在我想要过渡的 svg 路径元素上。然后我将 colortransition 属性添加到周围的 anchor 标记,并在 anchor 标记而不是 svg 路径本身上执行 CSS 转换。下面是一个非常精简的示例:

HTML:

<a>
<svg>
<path fill="currentColor" />
</svg>
</a>

SCSS:

a { color: black; transition: color .2s linear;
&:hover { color: white; } }

关于css - 为什么这个 CSS 过渡在 anchor 内的 SVG 上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22593883/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com