为什么在JS用Length查看style属性,结果为0,用removePerproty移除背景好使,但对border属性就不好用了


<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>css样式</title>

</head>

<style>

*{

margin: 0;

padding: 0;


}

#div1{

width: 300px;

height: 300px;

margin: 0 auto;

margin-top: 50px;

background: red;

border-radius: 10px;

border: 10px solid #eee;


}

</style>

<script >

window.onload=function () {

var odiv=document.getElementById('div1');

odiv.style.background="yellow";

var length=odiv.style.length;

alert(length);//0

var value=odiv.style.getPropertyValue('background');

var value2=odiv.style.removeProperty('border');

alert(value2);


}

</script>

<body>

<div id ='div1'></div>

</body>

</html>


汾汾学前端
浏览 1340回答 1
1回答

陈士愚

问题1:关于length的值,我直接把你的代码粘到sublime里跑了一下,截图如最后的图片。(并不是0)问题2:removeProperty只能移除内联样式!!!  border是由ID表示,由css文件定义的。如果实际工作中,想有这种移除border的操作,可以单独定义一个类(类相关CSS中写border),然后想移除border的时候,移除该类。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript