有时候,我需要在使用 CSS 元素: hover 或 JavaScript onmouseover 来控制页面上 html 元素的外观之间做出选择。考虑下面的场景,其中 div 包装输入
<div>
<input id="input">
</div>
我希望输入在鼠标悬停在 div 上时改变背景颜色
<style>
input {background-color:White;}
div:hover input {background-color:Blue;}
</style>
<div><input></div>
JavaScript 方法是
<div onmouseover="document.getElementById('input').style.backgroundColor='Blue';">
<input id="input">
</div>
每种方法的优点和缺点是什么?CSS 方法在大多数网页浏览器中都能很好地工作吗?JavaScript 比 css 慢吗?