用CSS变量修改样式怎样做,代码是什么
Admin 2022-05-28 群英技术资讯 1138 次浏览
这篇文章主要介绍了用CSS变量修改样式怎样做,代码是什么相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇用CSS变量修改样式怎样做,代码是什么文章都会有所收获,下面我们一起来看看吧。问题
js怎么去修改css伪类样式呢?但是js并没有伪类选择器,那么该怎么办呢?网上有不少方法,比如通过切换元素的类、在style中动态插入新的样式等。
那么这里再来一种方法,设置css变量(var),通过js去改变这个变量来实现。
示例:改变div的hover背景色
<!-- css -->
<style type="text/css">
:root {
--divHoverColor: red;
}
div {
width: 100px;
height: 100px;
background: bisque;
}
div:hover {
background: var(--divHoverColor);
}
</style>
<!-- html -->
<div onClick="onDivClick('green')"/>
<!-- js -->
<script type="text/javascript">
function onDivClick(value){
document.documentElement.style.setProperty('--divHoverColor', value);
}
</script>
那么,来认识下css variable吧
1. 基本用法
局部变量
div {
--masterColor: red;
background: var(--masterColor);
}
全局变量
/* 对于HTML来说,:root 表示 <html> 元素 */
:root {
--masterColor: red;
}
div {
background: var(--masterColor);
}
2. 语法
var( <custom-property-name> [, <declaration-value> ]? )
<custom-property-name> : 自定义属性名
<declaration-value> : 声明值(fallback value)
示例:
div {
/*
--masterColor未定义,所以背景色使用red
它可以通过逗号分隔,定义多个声明值,var(--masterColor, red, green)
*/
background: var(--masterColor, red);
}
变量可以通过var()进行引用
示例:
div {
--masterColor: red;
--bgColor: var(--masterColor)
}
注意:属性名是不能使用变量的
错误示例:
div {
--bg: background;
var(--bg): red;
}
3. 浏览器支持
Can I use
使用@support检测
@supports ( (--masterColor: red)) {
/* supported */
}
@supports ( not (--masterColor: red)) {
/* not supported */
}
使用JS检测
const isSupported = window.CSS && window.CSS.supports
&& window.CSS.supports('--masterColor', 'red');
if (isSupported) {
/* supported */
} else {
/* not supported */
}
参考
MDN
CSS Variable 规范
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
css内边框的理解:1、内边框是用box-sizing属性设置的。允许您以特定的方式定义匹配某个区域的特定元素。2、通过将box-sizing设置为border-box。浏览器呈现出带有指定宽度和高度的框。
CSS伪类是用来添加一些选择器的特殊效果,是用于已有元素处于某种状态时为其添加对应的样式,这个状态是根据用户行为而动态变化的。例如:当用户悬停在指定元素时,可以通过:hover
pointer-events表示什么,常用场景有几种?有不少朋友对此感兴趣,下面小编给大家整理和分享了相关知识和资料,易于大家学习和理解,有需要的朋友可以借鉴参考,下面我们一起来了解一下吧。
今天给大家分享的是用css3实现霓虹灯按钮的效果,实现效果如下,是不是非常的酷炫,那么这种类似霓虹灯的效果是怎样做的呢?接下来我们一起来了解看看实现代码。
这篇文章主要给大家分享CSS布局的内容,CSS布局是很基础的内容,熟练掌握还是很有必要的。本文给大家介绍两列布局和三列布局的使用,这两种布局都是比价常用的,而且使用也很多。接下来就跟随小编学习一下吧。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008