Uncaught TypeError: Cannot set property 'display' of undefined 可是我在css中写了的啊。。。


这个问题不是CSS的问题,而是一个纯javascript的问题。
你的css写得没错,问题出在Javascript当中的 getElementsByClassName("aa"),这个方法得到的是一个由class="aa"的所有元素组成的集合,而不是单个元素;
集合是没有display属性的,集合中的元素才有display属性。当你试图做 集合.style.display的时候,自然会报错。
所以你这个问题的解决方案应该是:遍历集合中所有的元素,然后给每个元素都加上display="none"的属性。示例代码如下:
window.onload = function (){
divset = document.getElementsByClassName("aa");
for (var i = 0; i<divset.length;i++) {
divset[i].style.display="none";
};
}
来自:https://zhidao.baidu.com/question/2120923087403409907.html
