当前位置: 首页 > 知识库问答 >
问题:

CSS转换属性覆盖SVG元素上的jQuery动画时间

仲孙温文
2023-03-14

我有一个很好的SVG元素,我通过从0px-70px增长它来动画。这个元素也是一个按钮,在悬停时有一个很好的笔划动画。我的问题是,用于笔划动画的CSS过渡属性会影响元素出现时的增长速度。我不想我的悬停动画去太快,但出现动画是太慢了。

<svg width="141" height="141" >
    <rect rx="3" y="-50" x="50" width="0" height="0" transform="rotate(45)" fill="white"   class="timeline-button">
    </rect>
</svg>

JS:

$("rect").animate({
  width: "50%",
  height: "50%"
},100);

http://codepen.io/anon/pen/qbelqy

除了用jQuery手动更改transition属性之外,还有什么方法可以解决这个问题吗?这是一个烦人的解决方案,因为按钮会不断地被动画化并与之交互。

共有1个答案

梁丘逸仙
2023-03-14

其实这件事很容易就搞清楚了。我使用css过渡属性动画“all”。我没有对所有内容进行动画化,而是指定了需要动画化的内容,因此将其从:

transition: 2s all ease;

致:

transition: stroke-dasharray 1s, stroke-width 1s, stroke-dashoffset 1s, ease;

这些属性不受jQuery animate命令的影响,因此它们彼此分离。我不确定,但需要做什么,如果我需要动画的笔画宽度,例如。

 类似资料:
  • 问题内容: 我有以下几点: 在我的样式表中,我有: 这篇文章的样式,我对此感到高兴。现在,对于的 单个 实例,我想执行以下操作: 我已经定义了: 但是该类未设置背景色。似乎html标记的样式优先,无论样式表中CSS规则的顺序如何。 如何通过使用样式类覆盖样式化html标签的CSS属性?这是可能吗?还有其他选择吗? 问题答案: 那是CSS的特殊性问题。 具有比选择器更高的特异性值。 按价值计算: >

  • 问题内容: 是否可以通过 对SVG元素 进行 3D转换 来实现透视? 我说的是与《星球大战》首部作品的3d透视图相似的事物。这是一个使用 CSS3 3d转换达到预期效果的jsfiddle: __ 问题答案: 2018年11月更新: 在最新的chrome和Firefox中可以测试该问题的片段。尽管对svg元素的3d转换的支持不是很广泛,但是浏览器正在越来越多地实现它。 来源答案: SVG元素不支持3

  • 问题内容: 看一个简单的例子: 正如您在JSfiddle上的演示中所看到的那样,SPAN元素将覆盖其祖先ANCHOR元素的和属性值。但是,由于某些原因该属性不会被覆盖。 我假设某些CSS属性可以被祖先元素覆盖,而其他一些CSS属性则不能。 是这样吗?如果是的话,我怎么知道哪些可以被覆盖,哪些不能被覆盖? 问题答案: 从[规格]: 后代元素的“文本装饰”属性对祖先的装饰没有任何影响。 进一步引用(不

  • 尝试在父SVG中定位电池指示器。SVG元素有一个电池的路径和一个显示百分比的文本元素。它的位置有两个css转换和文本属性。文本在Chrome/Firefox中打开时定位正确,但在Safari中会产生分支。 代码本https://Codepen.io/niwsa/pen/rnnbkeg?editors=1000

  • 问题内容: 是否可以使用单独的自定义css文件覆盖已样式化的JQuery Mobile元素(按钮,列表等)? 如果是这样,我将如何去引用这些元素。 谢谢 问题答案: 我不知道这样做的官方优雅方法,但是我在非min的css文件中查找类,然后将类似的内容添加到jquery mobile 后面 的.css文件中: .ui-header .ui-title {margin-right:20px; marg

  • 问题内容: 我的页面布局涉及很多绝对位置和z索引位置,因此有很多元素相互重叠。 元素之一仅包含文本,它悬停在许多其他事物之上。 在该元素下方,有几个应用了CSS悬停伪类的元素。 当鼠标经过包含文本的元素时,我想以某种方式使下面的Element响应鼠标的存在并激活伪类样式。 有没有什么样式的元素,以便它允许悬停通过它传递给下面的任何元素? 使用JavaScript并不是很难,但是为了使事情尽可能简单