我有一个有渐变轮廓的div <div class="base-action-card"></div>
.当处于:hover
状态时,div会获得渐变背景.
transition
似乎不起作用.我在MDN文档中看不出是什么原因导致了这一点.
我如何在div中淡入淡出渐变背景?
我try 将transition: background 0.3s;
添加到.base-action-card
类 Select 器中,希望浏览器在0.3s
上为从white
到linear-gradient(180deg, #1FC1FA 0%, #4b67f2 100%);
的转换设置关键帧.
不会渲染任何关键帧.
代码片段:
.base-action-card {
padding: 1rem;
position: relative;
z-index: 0;
height: 100%;
width: 100%;
aspect-ratio: 16/9;
border-radius: 10px;
cursor: pointer;
background: white;
height: 200px;
width: 200px;
background: linear-gradient(180deg, white 0%, white 100%); /* Solid white gradient */
transition: background 0.3s;
&::before {
content: "";
position: absolute;
z-index: -1;
inset: 0;
padding: 2px; /* Set the width of the "border" */
border-radius: 10px;
background: linear-gradient(180deg, #1FC1FA 0%, #4b67f2 100%);
mask:
linear-gradient(#fff 0 0) content-box,
linear-gradient(#fff 0 0);
mask-composite: exclude;
}
&:hover, &:active {
background: linear-gradient(180deg, #1FC1FA 0%, #4b67f2 100%);
}
}
<div class="base-action-card"></div>