JavaScript 写css的内联样式

ops/2024/12/14 0:09:18/

一、使用style属性-直接设置单个 CSS 属性

javascript">// 获取元素
var element = document.getElementById("myElement");// 设置样式
element.style.color = "red";
element.style.backgroundColor = "blue";
element.style.fontSize = "20px";

二、使用cssText属性-一次性设置多个 CSS 属性

javascript">// 获取元素
var element = document.getElementById("myElement");// 设置样式
element.style.cssText = "color: red; background-color: blue; font-size: 20px;";

三、使用setAttribute方法-通过设置 style 属性来添加样式

javascript">// 获取元素
var element = document.getElementById("myElement");// 设置样式
element.setAttribute("style", "color: red; background-color: blue; font-size: 20px;");

四、使用setProperty方法-设置 CSS 属性,并可以选择设置优先级(如 important

javascript">style.setProperty(propertyName, value, priority);
  1. propertyName: 要设置的 CSS 属性名称(例如 'color' 或 'background-color')。
  2. value: 属性的值(例如 'red' 或 '16px')。
  3. priority(可选): 优先级标志,通常是 'important'。如果不指定,默认为空字符串,表示没有优先级。
javascript">// 获取元素
var element = document.getElementById("myElement");// 设置样式
element.setProperty("color", "red","important");

 五、使用 className 或 classList-添加一个预定义的 CSS 类

javascript">// 获取元素
var element = document.getElementById("myElement");// 使用className添加
element.className = 'myClass';// 添加CSS类
element.classList.add("myClass");// 移除CSS类
element.classList.remove("myClass");
css">.myClass {color: red;background-color: blue;font-size: 20px;
}

六、使用 createElement 和 appendChild-动态创建一个 <style> 元素并添加 CSS 类

javascript">const style = document.createElement('style');
style.textContent = `.myClass {color: red;font-size: 20px;}
`;
document.head.appendChild(style);

七、使用 insertAdjacentHTML-使用 insertAdjacentHTML 方法插入 CSS

javascript">element.insertAdjacentHTML(position, text);
  1. position: 插入内容的位置,可以是以下四个字符串之一:
    1. 'beforebegin': 在目标元素之前插入。
    2. 'afterbegin': 在目标元素的第一个子节点之前插入。
    3. 'beforeend': 在目标元素的最后一个子节点之后插入。
    4. 'afterend': 在目标元素之后插入。
  2. text: 要插入的 HTML 字符串。
javascript">document.head.insertAdjacentHTML('beforeend', `<style>.myClass {color: red;font-size: 20px;}</style>
`);

八、使用 innerHTML-动态创建一个 <style> 元素并通过 innerHTML 设置 CSS

javascript">const style = document.createElement('style');
document.head.appendChild(style);
style.innerHTML = `.myClass {color: red;font-size: 20px;}
`;

九、使用CSSStyleSheet -动态创建一个 <style> 元素并通过 CSSStyleSheet 插入 CSS 规则

javascript">stylesheet.addRule(selector, style, index);
  1. selector: CSS 选择器(例如 '.my-class')。
  2. style: CSS 样式声明字符串(例如 'color: red; font-size: 20px;')。
  3. index(可选): 规则在样式表中的位置。如果不指定,默认添加到最后。
javascript">stylesheet.insertRule(rule, index);
  1. rule: 包含选择器和样式声明的完整 CSS 规则字符串(例如 '.my-class { color: red; font-size: 20px; }')。
  2. index(可选): 规则在样式表中的位置。如果不指定,默认添加到最后。
javascript">// 创建一个新的样式表
const styleSheet = document.createElement('style');
document.head.appendChild(styleSheet);// 获取样式表的 sheet 对象
const sheet = styleSheet.sheet;// 添加一条 CSS 规则
sheet.insertRule('.my-class { color: red; }', sheet.cssRules.length);

十、使用 window.getComputedStyle 查询计算后的样式-查询计算后的样式

javascript">// 获取元素
var element = document.getElementById("myElement");// 设置样式
element.style.color = "red";
element.style.backgroundColor = "blue";
element.style.fontSize = "20px";// 查询计算后的样式const computedStyle = window.getComputedStyle(element);console.log(computedStyle.color); // 输出:redconsole.log(computedStyle.backgroundColor); // 输出: blueconsole.log(computedStyle.fontSize); // 输出: 20px

综合应用

javascript"><template><div id="myElement">myElement</div>
</template><script setup>
import { onMounted } from 'vue';onMounted(() => {// 获取元素var element = document.getElementById("myElement");// 使用style属性设置样式element.style.color = "red";element.style.backgroundColor = "blue";element.style.fontSize = "20px";// 使用cssText属性设置样式element.style.cssText += " border: 10px solid black;";// 使用setAttribute方法设置样式element.setAttribute("style", element.getAttribute("style") + " padding: 100px;");// 使用setProperty方法设置样式element.style.setProperty("margin", "50px", "important");// 使用className或classList添加CSS类element.classList.add("myClass");// 定义一个CSS类const style = document.createElement('style');style.textContent = `.myClass {color: green;background-color: yellow;font-size: 24px;}`;document.head.appendChild(style);// 使用insertAdjacentHTML插入CSSdocument.head.insertAdjacentHTML('beforeend', `<style>.anotherClass {color: purple;font-size: 18px;}</style>`);// 使用innerHTML插入CSSconst anotherStyle = document.createElement('style');document.head.appendChild(anotherStyle);anotherStyle.innerHTML = `.yetAnotherClass {color: orange;font-size: 22px;}`;// 使用CSSStyleSheet插入规则const styleSheet = document.createElement('style');document.head.appendChild(styleSheet);const sheet = styleSheet.sheet;sheet.insertRule('.dynamicClass { color: brown; font-size: 26px; }', sheet.cssRules.length);// 查询计算后的样式const computedStyle = window.getComputedStyle(element);console.log(computedStyle.color); // 输出:rgb(0, 128, 0) (green)console.log(computedStyle.backgroundColor); // 输出:rgb(255, 255, 0) (yellow)console.log(computedStyle.fontSize); // 输出:24pxconsole.log(computedStyle.margin); // 输出:5px (important)
});
</script><style></style>

http://www.ppmy.cn/ops/141663.html

相关文章

Qt源码阅读(六) ⏱️QTimer

Qt源码阅读(六) ⏱️QTimer Qt 为我们提供了一个非常实用的定时器&#xff08;QTimer&#xff09;&#xff0c;而在标准库中却没有类似的通用定时器。网络上有很多文章教你如何实现一个定时器&#xff0c;但本着就近原则&#xff0c;今天我们将深入阅读 Qt 中 QTimer 的源码&a…

spring boot之@Import注解的应用

我们知道spring boot会通过ComponentScan定义包扫描路径进行业务定义的bean的加载&#xff0c;但是对于很多不在此包路径下定义的bean怎么办呢&#xff1f;比如其他jar包中定义的。这时候import就发挥作用了&#xff0c;通过它也可以实现bean的定义。具体是怎么做的呢&#xff…

ubuntu22.04安装precice2.1.1出现的bug(涉及到openfoam7、dealii9.2.0)

安装爆轰案例&#xff1a; 1.openfoam7(成功) 验证&#xff1a;of7 、 blockMesh 2.blastfoam2.0.0成功 验证&#xff1a;of、 blastfoam 安装上面则运行Fluid案例成功 3.mpi 成功 验证&#xff1a;mpirun -np 2 hostname 4.openfoam-adapterv1.2.3 位置/home/jie/myap…

如何使用 Python 发送 HTTP 请求?

在Python中发送HTTP请求最常用的库是requests&#xff0c;它提供了简单易用的API来发送各种类型的HTTP请求。 除此之外&#xff0c;还有标准库中的http.client&#xff08;以前叫做httplib&#xff09;和urllib&#xff0c;但它们相对更底层&#xff0c;代码量较大&#xff0c…

嵌入式驱动开发详解14(SPI驱动架构实现)

文章目录 前言SPI简介SPI介绍SPI工作模式SPI特点 驱动开发驱动架构SPI控制器驱动SPI设备驱动SPI 设备和驱动匹配过程SPI其他相关API函数 参考文献 前言 SPI 是很常用的串行通信协议&#xff0c;可以通过 SPI 来连接众多的传感器&#xff0c;相比 I2C 接 口&#xff0c;SPI 接口…

Python 程序与 Java 系统集成:通过 FastAPI 实现 HTTP 接口

要将你的 Python 程序封装为一个 API 服务&#xff0c;使得前后端 Java 系统能够通过 HTTP 调用&#xff0c;你可以使用 FastAPI 框架来实现。这是一个现代的、快速的 Web 框架&#xff0c;特别适合用于构建 APIs。FastAPI 支持自动生成 OpenAPI 文档&#xff0c;且性能非常高&…

js:v-for循环中我希望再次循环七张图片,需要在v-for中嵌套一个v-for还是?

问&#xff1a; div classxxxx v-for(item,index) in data :keyindex div classimgDiv div classimgDivBox /div /div .imgDivBox { .background-img(/assets/images/top_01.png) } 这是现在设置的图片&#xff0c;但是现在我希望遍历一个数组然后遍历top01-top07&…

JDK8新特性:Stream

JDK8最大的改变&#xff1a; 1. lambda表达式 2. Stream 1. Steam流的入门 什么是Stream&#xff1f; 也叫Stream流&#xff0c;是jdk8开始的一套API&#xff0c;用于操作集合或者数组中的数据 优点&#xff1a; Stream流大量结合了Lambda的语法风格来创建&#xff0c;提…