javascript - 使用 vanilla javascript 获取 <ul> <li> 子节点的 CSS 属性

标签 javascript html css

如何获取节点子元素的 CSS 属性? 我想获得 <li> 的高度<ul> 的元素

样式.scss

ul.menu {
   width: 100%;
   float: left;
   li {
      height: 28px;
    }
}

javascript

let elementList = this.dropdownMenu.nativeElement.children;
console.log(elementList.length);
console.log(/*height of li*/);

我更喜欢使用 vanilla JavaScript 而不使用 jQuery 的解决方案!

最佳答案

对于您的情况,html 看起来像:

<ul class="menu">
  <li>a</li>
  <li>b</li>
  <li>c</li>
</ul>

和CSS:

ul.menu {
   width: 100%;
   float: left;
}

ul.menu li {
  height: 28px;
}

您的工作 javascript 应该是:

var list = document.getElementsByClassName("menu")[0];

for (var i = 0; i < list.children.length; ++i) {
    var clientHeight = list.children[i].clientHeight,
        offsetHeight = list.children[i].offsetHeight;
    console.log(clientHeight); // with padding
    console.log(offsetHeight); // with borders
}

另见 this answer .

关于javascript - 使用 vanilla javascript 获取 <ul> <li> 子节点的 CSS 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46886217/

相关文章:

javascript - jQuery 数据表 : calling draw() inside initComplete

html - 基于对象宽度的 TranslateY

html - 如何为导航选项卡的事件选项卡设置样式

html - 由于 h1 标签,IE7 中的空间

css - 将图像裁剪为 <div> 的大小

html - 图像/图标作为提交按钮

jquery - 使用 jQuery animate 调整高度时 IE 边框困惑

javascript - 使用 for 循环在 Canvas 中绘制 img

javascript - 使用正则表达式查找和替换

javascript - 元素隐式具有 'any' 类型,因为索引表达式不是 'number' 类型