我有一个名为spn1
的<span>
,它有一些来自inline + CSS文件的样式。
我还有另一个名为spn2
的<span>
。
如何将spn1
的complete样式克隆到spn2
中
我希望spn2
看起来(在风格上)完全像spn1
。
发布于 2012-01-11 00:52:58
看看这个帖子:https://stackoverflow.com/a/6416527/541827
其思想是将样式的所有属性从一个项目复制到另一个项目
或者只是使用jquery.copycss.js插件,答案是基于。
用法:
$('#some-element').copyCSS('#another-element'); // copy all styles
$('#some-element').copyCSS('#another-element', ['top', 'left']); // copy just top and left
$('#some-element').copyCSS('#another-element', null, ['top', 'left']); // copy everything except top and left
发布于 2012-01-10 23:52:47
要复制元素上的显式样式集,可以使用以下方法:
let $original = $('#spn1');
let $target = $('#spn2');
$target
.prop("style", $original.attr("style"))
.addClass($original.attr("class"));
.foo { color: #F00; }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<span id="spn1" class="foo" style="background-color: #FF0;">Styled by default</span>
<span id="spn2">Plain by default</span>
请注意,这不会复制元素的计算样式,即从父元素或全局选择器继承的样式规则。
发布于 2012-01-11 03:05:14
jQuery没有任何直接的工具来做这件事。您将不得不使用普通的老式JavaScript来找到一种跨浏览器的方法来将一个元素的计算样式复制到另一个元素。This answer有一个潜在解决方案的实现。
https://stackoverflow.com/questions/8806144
复制相似问题