不上代碼了,語言描述一下.一個div,我用內(nèi)聯(lián)給絕對定位的top和left,然后用js修改top和left,功能正常.但當(dāng)不用內(nèi)聯(lián)而采用內(nèi)部樣式或者外部樣式的時候,js修改top和left就失效了.內(nèi)聯(lián)優(yōu)先級最高,js都能夠修改,怎么反而和內(nèi)部/外部樣式?jīng)_突了呢?我把代碼補(bǔ)上:<!DOCTYPE?html>
<html>
<head>
<meta?charset="UTF-8">
<title></title>
<style?type="text/css">
div?{
background:?orange;
width:?100px;
height:?100px;
padding:?30px;
border-radius:?200px;
}
</style>
</head>
<body>
<div?id="ball"?style="position:?absolute;top:50px;left:?50px;">
</div>
<script?type="text/javascript?">
var?key?=?{
W:?87,
S:?83,
A:?65,
D:?68
}
function?keyMove(e)?{
var?ball?=?document.getElementById('ball');
var?top?=?parseInt(ball.style.top);
var?left?=?parseInt(ball.style.left);
switch(e.keyCode)?{
case?key.W:
ball.style.top?=?top?-?50?+?'px';
break;
case?key.A:
ball.style.left?=?left?-?50?+?'px';
break;
case?key.S:
ball.style.top?=?top?+?50?+?'px';
break;
case?key.D:
ball.style.left?=?left?+?50?+?'px';
break;
}
}
document.onkeydown?=?keyMove;
</script>
</body>
</html>這樣寫成內(nèi)聯(lián)是一點(diǎn)問題沒有的,但把position: absolute;top:50px;left: 50px;放到內(nèi)部或外部樣式,js就失效了.
js修改樣式和內(nèi)部樣式起了沖突
留白未來
2016-08-15 21:29:44