javaScript:DOM中的CSS操作

news2024/10/5 20:25:12

 

目录

1.style 属性获取元素写在行间的样式

2.getComputedStyle(元素对象,null)可以获取元素的非行间样式 

3.案例(定义一个div和按钮,每点击一次按钮div宽度增加)

效果预览图

代码实现


   

       在 JavaScript 中,可以通过 DOM(文档对象模型)操作来访问和修改网页上的 CSS 样式。js提供了灵活的方式来操作和修改 DOM 元素的 CSS 样式,使网页开发者可以根据需要进行样式的动态控制和改变。

1.style 属性获取元素写在行间的样式

通过 元素的 style 属性,只能获取元素写在行间的样式

通过 元素的style属性设置的样式也是行间样式

2.getComputedStyle(元素对象,null)可以获取元素的非行间样式 

getComputedStyle(元素对象,null)可以获取元素的非行间样式

该方法的第一个参数是要获取样式的元素对象,第二个参数一般写成null

他的含义是伪类或者伪元素,一旦具有第二个参数,则表示获取的是伪类或者伪元素的css样式。

在ie中,可以使用 currentStyle来获取元素的样式  例如 wp.currentStyle['width'] 

 let wp = document.querySelector('.wp')
    console.log(wp.style);
    console.log(getComputedStyle(wp,null));
    
    //获取wp对象的所有样式
    let obj = getComputedStyle(wp,null)
    console.log(obj.width,obj.height);

    let obj2 = getComputedStyle(wp,':hover')
    console.log(obj2.background);
    // console.log(wp.currentStyle['width']);

3.案例(定义一个div和按钮,每点击一次按钮div宽度增加)

效果预览图

代码实现

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>css操作</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        .wp{
            width: 200px;
            height: 200px;
            border: 1px #000 solid;
        }
        .wp:hover {
            background: #ff0;
        }
    </style>
</head>
<body>
    <div class="wp" ></div>
    <button id="btn">点击++</button>
</body>
</html>
<script>
    
    let btn = document.getElementById('btn')
    btn.onclick = function(){
        let i = 5;
        console.log(getComputedStyle(wp).width);
        let w = getComputedStyle(wp).width
        wp.style.width =parseInt(w)+50+'px'  //parseInt保留整数部分
    }
</script>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/974489.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【8章】Spark编程基础(Python版)

课程资源&#xff1a;&#xff08;林子雨&#xff09;Spark编程基础(Python版)_哔哩哔哩_bilibili 第8章 Spark MLlib&#xff08;6节&#xff09; 机器学习算法库 &#xff08;一&#xff09;MLlib简介 1、机器学习 机器学习可以看做是一门人工智能的科学&#xff0c;该领…

【前端面试】快来看看这8个高级面试题

目录 前言1、仔细观察 和 - 运算符2、复制数组元素3、原型和__proto__之间的区别4、范围5、对象强制6、理解对象键7、运算符8、闭包 前言 JavaScript 是一种功能强大的语言&#xff0c;是网络的主要构建块之一。这种强大的语言也有一些怪癖。例如&#xff0c;您是否知道 0 -…

ES查询报错内容长度超过104857600

项目场景&#xff1a; 使用 ElasticsearchRestTemplate 或者使用 RestHighLevelClient 查询 ES 报错 内容长度超过 104857600 问题描述 ES 查询报错 entiity content is too long xxx for the configured buffer limit 104857600 Overridepublic void esQuery() {restHighL…

能耗管理+分区温控成为开发节能、省电神器的关键!从此告别电费刺客时代

取暖器在人们脑海中最深刻的印象&#xff0c;就是费电&#xff01;而它耗电量大的原因&#xff0c;主要在于它是靠电能直接转化为热能&#xff1a;在取暖设备通电后&#xff0c;内部高电阻的电热丝发热&#xff0c;风机会将这股热量吹散到室内&#xff0c;从而达到全屋取暖的效…

OpenCV基础知识(10)— 人脸识别(人脸跟踪、眼睛跟踪、行人跟踪、车牌跟踪和人脸识别)

前言&#xff1a;Hello大家好&#xff0c;我是小哥谈。人脸识别是基于人的脸部特征信息进行身份识别的一种生物识别技术&#xff0c;也是计算机视觉重点发展的技术。机械学习算法诞生之后&#xff0c;计算机可以通过摄像头等输入设备自动分析图像中包含的内容信息&#xff0c;随…

SpringCloud从基础到活用(超详细)

一、认识微服务 项目的架构方式有&#xff1a;单体架构、分布式架构、微服务架构- 随着互联网行业的发展&#xff0c;对服务的要求也越来越高&#xff0c;项目架构也从单体架构逐渐演变为现在流行的微服务架构。 - 这些架构之间有怎样的差别呢&#xff1f;1、单体架构 **单体…

Linux设备驱动程序

一、设备驱动程序简介 图1.1 内核功能的划分 可装载模块 Linux有一个很好的特性:内核提供的特性可在运行时进行扩展。这意味着当系统启动 并运行时&#xff0c;我们可以向内核添加功能( 当然也可以移除功能)。 可在运行时添加到内核中的代码被称为“模块”。Linux内核支持好几…

Si24R2F+畜牧 耳标测体温开发资料

Si24R2F是针对IOT应用领域推出的新款超低功耗2.4G内置NVM单发射芯片。广泛应用于2.4G有源活体动物耳标&#xff0c;带实时测温计步功能。相较于Si24R2E&#xff0c;Si24R2F增加了温度监控、自动唤醒间隔功能&#xff1b;发射功率由7dBm增加到12dBm&#xff0c;距离更远&#xf…

聊透 GPU 通信技术——GPU Direct、NVLink、RDMA

最近人工智能大火&#xff0c;AI 应用所涉及的技术能力包括语音、图像、视频、NLP 等多方面&#xff0c;而这些都需要强大的计算资源支持。AI 技术对算力的需求是非常庞大的&#xff0c;虽然 GPU 的计算能力在持续提升&#xff0c;但是对于 AI 来说&#xff0c;单卡的计算能力就…

大模型 Dalle2 学习三部曲(二)clip学习

clip论文比较长48页&#xff0c;但是clip模型本身又比较简单&#xff0c;效果又奇好&#xff0c;正所谓大道至简&#xff0c;我们来学习一下clip论文中的一些技巧&#xff0c;可以让我们快速加深对clip模型的理解&#xff0c;以及大模型对推荐带来革命性的变化。 clip结构 首选…

智慧公厕是对智慧城市“神经末梢”的有效激活,公共厕所实现可感知、可视化、可管理、可控制

在当今科技迅速发展的时代&#xff0c;智慧城市已经成为人们关注的热点话题。作为城市基础设施的重要组成部分&#xff0c;公共厕所也逐渐融入到智慧城市的建设中&#xff0c;成为城市管理的焦点之一。智慧公厕作为智慧城市的“神经末梢”&#xff0c;通过可感知、可视化、可管…

期权开户平台:怎样0门槛开户期权,不懂别乱来!

“期权开户平台有传统券商平台、在线期权分仓开户平台、期权科普馆等。具体可用的期权开户平台会因各地区的监管规定和券商政策而有所不同&#xff0c;下文为大家介绍期权开户平台&#xff1a;怎样0门槛开通期权&#xff0c;不懂别乱来&#xff01;本文来自&#xff1a;期权酱 …

无涯教程-JavaScript - MINUTE函数

描述 MINUTE函数返回时间值的分钟。分钟以整数形式给出,范围为0到59。 语法 MINUTE (serial_number)争论 Argument描述Required/OptionalSerial_number 您想要找到的包含分钟的时间。 可以输入时间 作为引号内的文本字符串(如" 6:45 PM") 为十进制数字(如0.7812…

简易实现QT中的virtualkeyboard及问题总结

文章目录 前言&#xff1a;一、虚拟键盘的实现综合代码 二、为什么选用QWidget而不适用QDialog实现键盘三、从窗体a拉起窗体b后&#xff0c;窗体b闪退问题的探讨四、关闭主窗口时子窗口未关闭的问题 前言&#xff1a; 本文章主要包含四部分&#xff1a; 虚拟键盘的实现&#…

【LeetCode-中等题】207. 课程表

文章目录 题目方法一&#xff1a;bfs广度优先 有向图的拓扑排序&#xff08;入度&#xff09;方法二&#xff1a;dfs 深度优先搜索 题目 此题就可以转换为&#xff0c;求一个有向图是否存在环&#xff1b; 存在环&#xff0c;拓扑排序得出的结果是不完整的&#xff0c; 如果不…

Vue+NodeJS上传图片到腾讯云Cos

一.前端Vue 1.选择图片 --HTML <input type"file" accept"image/*" change"handleFileChange"> <el-button size"large" click"changeAvatar">上传头像</el-button> //选择图片 function handleFileC…

⽹络与HTTP 笔试题精讲1

OSI七层与TCP/IP 这个就是OSI参考模型,⽽实际我们现在的互联⽹世界是就是这个理论模型的落地叫做TCP/IP协议 TCP的三次握⼿与四次挥⼿ 客户端想要发送数据给服务端,在发送实际的数据之前,需要先在两端之间建⽴连接,数据发完以后也需要将该连接关闭。建⽴连接的过程就是我们…

Visual Studio 新建类从默认internal改为public

前言 之前一直用的Resharp辅助编写C#代码&#xff0c;Resharp用起来的确方便不少&#xff0c;但是太消耗开发机内存了。重装电脑后&#xff0c;还是决定使用Visual Studio内置的功能。 默认情况下&#xff0c;Visual Studio 中生成一个类或接口是internal类型的&#xff0c;而…

让你忘了自己还戴着耳机,南卡OE Pro 00压开放式耳机

开放式耳机的好处很多&#xff0c;不入耳不会产生异物感&#xff0c;在户外运动可以时刻保持与外界连接更安全&#xff0c;也不会因为耳塞的卫生问题造成耳道感染&#xff0c;因此对于需要长时间佩戴耳机的户外运动&#xff0c;尤其对于一些患有耳道疾病的用户&#xff0c;需要…

LM-Infinite: 一种简单有效的大模型即时长度泛化,解决更长文本推理问题

深度学习自然语言处理 原创作者&#xff1a;qazw 论文&#xff1a;LM-Infinite: Simple On-the-Fly Length Generalization for Large Language Models地址&#xff1a;https://arxiv.org/abs/2308.16137 进NLP群—>加入NLP交流群 摘要 近年来&#xff0c;LLM在各个领域的性…