1. 通过JS修改元素的样式(内联样式)
-->语法:元素.style样式名 = 样式值
-->注意:如果css的样式名中含有“-”
这种名称在JS中是不合法的,比如background-color
需要将这种样式名修改为驼峰命名法
box.style.backgroundColor = 'pink'
-->我们通过style属性设置的样式都是内联样式
而内联样式有较高的优先级,所以通过JS修改的样式往往会立即显示,但是如果在样式中写了!important
则此时样式会有最高的优先级,即使通过JS也不能覆盖该样式,此时将会导致JS修改样式失效,所以尽量不要为样式添加!important
2. 读取元素的样式(内联样式)
-->语法:元素.style.样式名
通过style属性设置和读取的都是内联样式,无法读取样式表中的样式
3. 获取元素当前显示的样式
-->语法:元素.currentStyle.样式名 (只支持IE浏览器)
-->如果当前元素没有设置该样式,则获取它的默认值
-->在其它浏览器中可以使用 getComputedStyle()方法来获取元素当前的样式,这个方法是window的方法
需两个参数:
第一个:需获取的元素
第二个:可以传递一个伪元素,一般都是传null
该方法返回一个对象,封装了当前元素的样式,想获取可以通过 对象.样式名 来获取样式,如果获取的样式没有设值,则会获取到真实的值,而不是默认值,比如没有设置width,它不会获取到aoto,而是一个长度
-->通过currentStyle和getComputedStyle()读取到的样式都是只读的,不能修改,如果要修改必须通过style属性