📜  javascript 样式元素 - Javascript (1)

📅  最后修改于: 2023-12-03 14:42:35.980000             🧑  作者: Mango

JavaScript 样式元素 - JavaScript

JavaScript 样式元素是一组用于操作 HTML 元素样式的 JavaScript 方法和属性。通过使用这些样式元素,程序员可以动态地修改或操纵 HTML 元素的外观和布局。

1. 操作 class 属性
1.1 element.classList

element.classList 是一个只读属性,返回一个 DOMTokenList 对象,可以用来操作元素的 class 属性。它提供了一系列方法来添加、删除或切换元素的 class。以下是一些常用的方法:

  • element.classList.add(className): 添加指定的类名到元素的 class 属性中。
  • element.classList.remove(className): 从元素的 class 属性中删除指定的类名。
  • element.classList.toggle(className): 如果元素的 class 属性中存在指定的类名,则删除它,否则添加它。
  • element.classList.contains(className): 返回一个布尔值,表示元素的 class 属性中是否包含指定的类名。

例如,下面的代码将给 id 为 "myElement" 的元素添加一个名为 "highlight" 的 class:

const element = document.getElementById("myElement");
element.classList.add("highlight");
1.2 element.className

element.className 是元素的 class 属性的字符串表示。可以通过直接修改这个字符串来操作元素的 class 属性。注意,直接修改 className 属性会覆盖元素原有的 class 属性,所以应该慎用。

const element = document.getElementById("myElement");
element.className = "highlight";
2. 操作样式属性
2.1 element.style

element.style 是一个对象,包含了元素的内联样式属性。通过修改这些属性的值,可以直接改变元素的样式。以下是一些常用的样式属性:

  • element.style.property: 获取或设置元素的指定样式属性的值。例如:element.style.color = "red";

例如,下面的代码将给 id 为 "myElement" 的元素设置背景颜色为红色:

const element = document.getElementById("myElement");
element.style.backgroundColor = "red";

注意,element.style 只能访问内联样式属性,不包括从外部 CSS 文件中定义的样式。

2.2 window.getComputedStyle(element, pseudoElement)

window.getComputedStyle() 方法返回一个 CSSStyleDeclaration 对象,包含了指定元素的所有最终计算后的样式属性。这可以用来获取元素的计算样式。

const element = document.getElementById("myElement");
const computedStyle = window.getComputedStyle(element);
console.log(computedStyle.color);
3. 操作尺寸和布局
3.1 element.offsetWidthelement.offsetHeight

element.offsetWidthelement.offsetHeight 属性分别返回元素的宽度和高度,包括元素的边框、内边距和滚动条(如果有)。

const element = document.getElementById("myElement");
console.log(element.offsetWidth);
console.log(element.offsetHeight);
3.2 element.clientWidthelement.clientHeight

element.clientWidthelement.clientHeight 属性分别返回元素的可见内容区域的宽度和高度,不包括边框和滚动条。

const element = document.getElementById("myElement");
console.log(element.clientWidth);
console.log(element.clientHeight);
3.3 element.getBoundingClientRect()

element.getBoundingClientRect() 方法返回一个 DOMRect 对象,包含了元素的位置、尺寸和边距等信息。

const element = document.getElementById("myElement");
const rect = element.getBoundingClientRect();
console.log(rect.width);
console.log(rect.height);
console.log(rect.top);
console.log(rect.left);
console.log(rect.right);
console.log(rect.bottom);

以上是一些常用的 JavaScript 样式元素,通过这些样式元素,程序员可以轻松地操作和操纵 HTML 元素的样式和布局。更多细节和方法,请参考相关的 JavaScript 文档。