Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/407.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何知道一个元素';宽度是绝对的还是相对的?_Javascript_Html_Css - Fatal编程技术网

Javascript 如何知道一个元素';宽度是绝对的还是相对的?

Javascript 如何知道一个元素';宽度是绝对的还是相对的?,javascript,html,css,Javascript,Html,Css,我正在编写一个javascript脚本,并在其上调整DOM元素的大小。但是我需要知道元素最初的大小是绝对的还是相对的 对于corse,我可以读取它的clientWidth属性,但它总是返回一个绝对整数。我怎么知道它最初是否由CSS中的百分比指定?是否有任何CSS属性(可从javascript读取)包含原始宽度表达式?如果宽度值在标记内,则可以使用document.getElementById(“id”).style.width。但是,如果您的css位于标记样式中,那么您将使用jquery快速解决

我正在编写一个javascript脚本,并在其上调整DOM元素的大小。但是我需要知道元素最初的大小是绝对的还是相对的


对于corse,我可以读取它的
clientWidth
属性,但它总是返回一个绝对整数。我怎么知道它最初是否由CSS中的百分比指定?是否有任何CSS属性(可从javascript读取)包含原始宽度表达式?

如果宽度值在标记内,则可以使用
document.getElementById(“id”).style.width
。但是,如果您的css位于标记样式中,那么您将使用jquery快速解决问题,或者您将必须创建自己的函数来提取此值,例如:

position\u prop=document.getElementById(id).style.position请参阅。不确定是否为window.getComputedStyle(elm[,pseudoelement]),这将返回一个css样式列表,浏览器将其视为您所看到的样式(计算样式)。@sadiqevani谢谢。我尝试了
window.getComputedStyle
,但它仍然在“宽度”和“高度”字段中始终返回绝对值。谢谢。在您发布的链接中,我看到了我需要的确切解决方案:
Element.currentStyle
。不幸的是,它只在IE中工作。我想我必须向javascript函数添加额外的参数。