JavaScript 既可以修改类,也可以修改 style 属性。
    相较于将样式写入 style 属性,我们应该首选通过 CSS 类的方式来添加样式。仅当类“无法处理”时,才应选择使用 style 属性的方式。

    className
    在很旧以前,JavaScript 中有一个限制:像 "class" 这样的保留字不能用作对象的属性。这一限制现在已经不存在了,但当时就不能存在像 elem.class 这样的 "class" 属性。
    因此,对于类,引入了看起来类似的属性 "className"elem.className 对应于 "class" 特性

    classList 的方法:

    • elem.classList.add/remove(class) — 添加/移除类。
    • elem.classList.toggle(class) — 如果类不存在就添加类,存在就移除它。
    • elem.classList.contains(class) — 检查给定类,返回 true/false

    style
    elem.style 属性是一个对象,它对应于 "style" 特性(attribute)中所写的内容。elem.style.width="100px" 的效果等价于我们在 style 特性中有一个 width:100px 字符串。
    对于多词(multi-word)属性,使用驼峰式 camelCase

    要读取已解析的(resolved)样式(对于所有类,在应用所有 CSS 并计算最终值之后):

    • getComputedStyle(elem, [pseudo]) 返回与 style 对象类似的,且包含了所有类的对象。只读