我想复制一个元素的所有计算的CSS并将其应用于另一个元素。通过计算样式,我的意思是,如果元素的宽度为100%,但是其父宽度为200px,则元素计算宽度为200px。我如何才能访问所有这些元素的样式?如何使用jQuery获取元素的所有计算样式?
回答
经过进一步研究使用马吉德的答案,我发现jQuery的“的CSS”方法的返回计算风格以及更好,因为它占浏览器差异 http://api.jquery.com/css/
是啊!傻我!我为什么试图让这把勺子走上这条漫长的路。故事的士气:在别处寻找之前,一定要检查你已经拥有的工具。 – 2010-01-28 01:48:08
@ hakim-sina你能解释一下吗?我不明白如何用jQuery的'css()'获得计算样式。 – Smamatti 2012-03-07 22:09:48
@ Smamatti:你能更具体吗?通常要得到一个计算风格,例如宽度(在问题中提到的例子),所有你需要做的就是将它传递给像这样的css函数: var width = $(“element”).css( “width”) – 2012-03-08 13:05:33
使用计算式。这里有一个简单的教程: Get Computed Style
而对于jQuery,它可以帮助您获取对源和目标元素的引用并轻松应用css规则。比方说,你只在两个属性,宽度和高度兴趣的话,那么你可以沿着线使用代码:
var oSource = $('#source');
var sWidth = document.defaultView.getComputedStyle(oSource, null).width;
var sHeight = document.defaultView.getComputedStyle(oSource, null).height;
$('#target').css('width', sWidth).css('height', sHeight);
非常感谢。我想我必须使用currentStyle来支持IE,是吗? – 2010-01-28 01:10:00
不确定关于7,请查看兼容性链接:http://www.quirksmode.org/dom/w3c_css.html – 2010-01-28 01:23:37
@ hakim-sina而不是做不同的事情,为什么不使用jQuery或其他库? – NoBugs 2015-07-05 01:57:38
- 1. 获取元素的所有计算样式
- 2. 如何使用jquery获取元素的样式属性
- 3. 使用JavaScript获取元素的所有CSS样式
- 4. 如何获取元素上的所有CSS样式?
- 5. 使用jQuery获取元素的所有直接子元素
- 6. 使用jQuery获取所有DOM元素的最佳方式
- 7. 使用jQuery计算元素
- 8. 如何从HTML元素中提取计算的样式值?
- 9. 使用javascript/jquery从未计算的CSS样式获取值
- 10. 如何从元素中删除所有继承和计算的样式?
- 11. 如何获取元素的样式值 - jQuery的
- 12. 如何获取元素的所有CSS
- 13. 获取DOM元素的所有CSS样式(一个Firebug)
- 14. 使用LXML获取所有HTML元素
- 15. 如何从CSS中获取指定的样式,而不是从元素中计算的样式?
- 16. 使用d3计算所选元素
- 17. 如何使用jQuery获取父元素的同级元素
- 18. 使用浏览器计算html元素的样式
- 19. 如何使用Scala获取json中所有元素的总和?
- 20. 如何使用Robot Framework获取网页元素的所有xpath?
- 21. 如何重新计算firefox扩展中元素的样式
- 22. 如何获取HTML5 SVG元素中所有元素的位置
- 23. 如何使用jQuery获取表格中所有行的元素ID
- 24. 如何使用Jquery动态获取所有元素的属性值?
- 25. ArrayList获取所有元素
- 26. 获取所有iframe元素
- 27. 使用jquery获取所有表单元素值?
- 28. 使用jQuery和Chrome devtools获取所有文本元素
- 29. jQuery的 - 计算元素
- 30. 如何使用jQuery获取所有ID?
找到一个答案,给*每个*风格的声明[这里](http://stackoverflow.com/questions/2558426/getcomputedstyle-or-cssmap-每个样式声明#answer-2561294),我认为这是OP说他们之后的事情。 – Barney 2012-11-23 15:52:27