添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

JavaScript 可以使用 HTML DOM Element 为 HTML Element 添加 CSS class,添加 CSS 可以使用 Element classList className 两个属性来配置。

Element.classList Element.className 的区别:

  • Element.classList 使用其方法 add() 函在原来的 class 上附加 class,不会删除原有的类,但是一次只能添加一个类 class,添加多个类需要多次调用其 add() 函数。
  • Element.className 是直接赋值该属性来添加类 class,可以一次赋值多个类,使用空格隔开多类,但是该方法会删除原有的类。
  • 使用classList实现JS添加CSS样式类

    以下实例分别展示为一个元素使用 classList 添加 CSS class 和为多个元素使用 classList 添加 CSS class

    单元素使用classList添加CSS样式类

  • 使用 document.getElementById() 获取元素,使用 classList 添加多个 class 需要多次调用 document.classList.add:
  • el = document.getElementById('#aTable');
    el.classList.add('table-bordered');
    el.classList.add('table-hover');
    

      注意如下方法添加 CSS class 的方式是不正确的,因为 add() 方法不支持一次添加多个类:

    el = getElementById('#el_id');
    el.classList.add('table-bordered table-hover');  // 这添加方法不正确,无法实现添加 CSS
    
  • 使用 document.querySelector()
  •   在使用该方法时,如果存在多个匹配到元素,该方法返回第一个匹配到的元素。

    el = document.querySelector('.table');
    el.classList.add('table-bordered');
    el.classList.add('table-hover');
    

    多元素使用classList添加CSS样式

    使用 document.querySelector()querySelectorAll(() ,然后使用 Array 的 forEach() 函数循环为每一个元素添加 CSS class

    var markdown = document.querySelector('.markdown');
      markdown.querySelectorAll('.table').forEach((item) => {
        item.classList.add('table-bordered');
            item.classList.add('table-hover');
        item.firstElementChild.classList.add('table-light');
    

    JavaScript使用className添加CSS

    以下实例分别展示为一个元素使用 className 添加 CSS class 和为多个元素使用 classList 添加 CSS class

    单元素使用 className 添加 CSS

  • 使用 document.getElementById()
  • el = document.getElementById('#aTable');
    el.className = 'table-bordered';
    el.className = 'table-bordered table-hover';  //或者一次赋值多个类 class
    
  • 使用 document.querySelector()
  •   在使用该方法时,如果存在多个匹配到元素,该方法返回第一个匹配到的元素。

    el = document.querySelector('.table');
    el.className = 'table-bordered';
    el.className = 'table-bordered table-hover';  //或者一次赋值多个类 class
    

    多元素使用 className 添加 CSS

    使用 document.querySelector()querySelectorAll(() ,然后使用 Array 的 forEach() 函数循环为每一个元素添加 CSS class

    var markdown = document.querySelector('.markdown');
    markdown.querySelectorAll('.table').forEach((item) => {
        item.className = 'table-bordered table-hover';
        item.firstElementChild.className = 'table-light';  // 为 table 的表头 thead 赋值类 class
          JavaScript 为 HTML 元素删除 CSS
        
          JavaScript 为多元素添加监听事件修改元素或属性
        
          Javascript 为元素添加事件监听器