css 变量哪些浏览器支持

html-css031

css 变量哪些浏览器支持,第1张

目前从 Can I use 上获取的信息显示除了 Edge 外主流浏览器的最新版都已经支持这个特性了,随后微软最新确认,EdgeHTML 15.15061中已经增加了对CSS自定义属性的支持!

拓展:

CSS变量:也称作“自定义属性”;CSS 自定义属性是可以级联的:每一个自定义属性可以多次出现,并且变量的值将会借助级联算法和自定义属性值运算出来。

本文已经假设你熟悉CSS变量,如果不熟悉,可以看我写的CSS变量基础知识: https://www.jianshu.com/p/a0f6233cf335

在研究Vue 3的“单文件驱动的CSS变量”之前,我们先看看Vue 2怎么使用CSS变量。

:style是行内样式,行内样式的缺点至少有三个:1. 字符多,写起来麻烦;2. 行内意味着无法复用,class可以复用;3. :style无法定义伪元素的样式。

CSS变量优势其实很明显,上面案例中, <div class="a-container">A元素</div>并没有写style,而且, a-container 是可以复用的,可以用在无数个元素上。最后,在<style>标签里可以定义伪元素的样式。

Vue 3加入了“单文件驱动的CSS变量”,它也是一种语法糖,到今天有2个版本,旧版简称“style vars”版本,因为被人诟病“创造了方言”而改成了新版,旧版我就不说了,新版用法举例:

也就是说,凡是<style>中使用了v-bind函数,都将传值视为CSS变量表达式,而且缺省 -- 符号。变量会自动去<script setup>里查找同名顶层变量。

拼接字符串要遵循CSS变量规范,CSS变量规范并没有直接拼接字符串的办法,而是采用calc乘法。

写起来是对象的点运算符,但是要用引号包裹起来,而且为了跟CSS常用的双引号区分,最好使用单引号。

Vue 2的写法在3里依然可用,而且更贴近原生,可以说是标准写法,而Vue 3实际上是2的语法糖。

方便程度上说,Vue 3的肯定更方便。

由于使用CSS变量,所以IE全不支持,老内核Edge全不支持。

IE 开发者工具添加css属性步骤如下:

选择开发人员工具栏目中,选择左起第一个鼠标指针按钮,然后将鼠标移动到“请假原因”多行文本空白处,点击鼠标左键。当前选中区域的元素和该元素的样式将分别在左右窗格显示出来。如图所示:

在左边窗格中,在选中的蓝色区域style属性值上方点击鼠标左键,此时style内容变为可编辑状态。如图所示:

选中后,右键选择“添加属性”就可以了