如何在CSS文件里加入变量

html-css013

如何在CSS文件里加入变量,第1张

如何在CSS文件里加入变量:这个技巧说来很简单。我们让Apache把任何stylesheet重定向到一个指定的PHP脚本。该脚本会一行行读取stylesheet的内容,找到并替换任何用户自定义的变量,最终会重新生成一个CSS样式表。浏览器不会发觉到有什么地方不同。在后面,我们会讨论如何缓存生成的最终结果避免加大CPU的负载。

学习CSS肯定绕不开的就是如何将css引入到HTML文件中,引入方式主要有三种:

内联样式、内部样式、外部样式

1、内联样式

内联样式又称行内样式,使用该样式需要直接在标签内添加“ style=" " ”,再将需要的样式写在双引号内,如

<div style="background: red">hello world!</div>1

行内样式比较适合初学者学习的时候使用,在网站开发时尽量不要去用,因为使用这种样式会把结构和CSS全部融合在一个页面里面,造成代码冗余,后期调整样式的时候非常不方便。

2、内部样式

内部样式是一种适合案例或者比较小的页面的引入方式,它的语法是在在head标签里添加style标签,再在style标签的内容区添加需要的样式,如:

<head>

<style type="text/css">

div{background: red}</style>

</head>12345

内部样式比较适合案例或者比较小的页面中,因为它也会增加HTML文件的代码量。

3、外部样式

外部样式是使用最广的引入方式,适合比较大的页面或者整站开发。引入方法是将样式写css文件中,再将css文件链接到HTML文件里。

而外部样式有两种链接方法引入HTML文件中:link和import

1)用link链接需要在html文件内添加link标签,在该标签内属性“ href=" " ”的双引号里写上css文件的路径即可。

<link rel="stylesheet" type="text/css" href="demo.css"/>1

2)用import链接需要用内部样式的方法添加“ @import url("")”属性,在url("")中写上css文件的路径。

<style>   @import url("demo.css")</style>123

同为外部样式的链接方式,link和import之间的不同不仅是载入链接的语法不同:

本质上link是HTML标签,是HTML的写法,但是import是CSS的提供的一种链接方式。所以link能够引入除css以外的其它文件,而import只能引入css文件。

link是没有兼容问题的,但是import在IE5以下不支持。

加载顺序上也不一样,link是HTML结构和CSS样式同时加载,而import是先加载HTML后加载CSS。有时候网速比较慢,你就会看到只有文字和边框的难看页面,然后才看到比较好看的页面,就是因为这个网页使用import链接的样式。

在用js控制dom修改样式的时候,link可以被修改,但是import不可以。

css是可以支持变量,且所有主流浏览器都支持。css变量又称"css自定义属性",css的变量声明是以“--”前缀,而前缀是"$"或"@"被预处理器sass或less占用,所以,css以"--"开头可以避免与预处理器产生冲突,

2.属性名可以包含数字,字母,以及下划线或者短横线,也可以是中文,日文或者韩文,但不能是属性名或数字开头,不能包含$,[,^,(,%等字符。

3.变量--primary只能用属性值,不能用作属性名

4.数字和单位直接写一起需使用calc()函数

拓展

cal()函数支持 "+", "-", "*", "/" 运算,需要注意的是,运算符前后都需要保留一个空格,例如:width: calc(100% - 10px);

任何长度值都可以使用calc()函数进行计算;

calc()函数使用标准的数学运算优先级规则;

5.变量的值是字符串时,可以直接拼接

6.var()函数第二个参数是设置默认值,若该变量不存在,则使用此默认值

7.css变量可以在任意选择器中使用包括在标签元素style及@media中

若想了解更深可看大神文章:

https://www.ruanyifeng.com/blog/2017/05/css-variables.html

https://www.zhangxinxu.com/wordpress/2016/11/css-css3-variables-var/