Javascript 在em中获取CSS中定义的元素的宽度

Javascript 在em中获取CSS中定义的元素的宽度,javascript,css,styles,width,Javascript,Css,Styles,Width,我在获取CSS中定义的元素的宽度时遇到问题。我知道如何使用Javascript获取CSS规则,但无法访问宽度菜单是我在CSS中使用em定义的固定宽度 我试图根据浏览器窗口减去固定的菜单宽度来更改div1的宽度 注意:我已经尝试使用style.width,但它在控制台中返回一个空行 jsfiddle: var div1=document.createElement('div'), css=getMatchedCSSRules(document.getElementById('menu'); con

我在获取CSS中定义的元素的宽度时遇到问题。我知道如何使用Javascript获取CSS规则,但无法访问宽度菜单是我在CSS中使用em定义的固定宽度

我试图根据浏览器窗口减去固定的菜单宽度来更改div1的宽度

注意:我已经尝试使用
style.width
,但它在控制台中返回一个空行

jsfiddle:

var div1=document.createElement('div'),
css=getMatchedCSSRules(document.getElementById('menu');
console.log(css)//工作,但不知道如何访问宽度
div1.style.width=window.innerWidth-;

使用“
offsetWidth
”访问菜单的宽度

var div1 = document.createElement('div'), 
css = document.getElementById('menu').offsetWidth;

console.log(css);
div1.style.width = css + "px";
使用:

尝试以下方法:

var width = window.getComputedStyle(document.getElementById("menu"), null).getPropertyValue("width");
var css = document.getElementById('menu');

console.log(window.getComputedStyle(css).width);​
var width = window.getComputedStyle(document.getElementById("menu"), null).getPropertyValue("width");