5个好用的 CSS 函数

简介【5个好用的 CSS 函数】css 包含了许多函数,而且它能够完成许多早期需要用 JAVAScript才能完成的事情 。每年都有新的特性被添加进来,这让我们的开发更加轻松,也减少了对JavaScript的依赖 。CSS 函数是它所具有的最强大的特性之一,在本文中,我将介绍一些我认为有用的函数 。
attr()attr 函数用于获取所选元素的属性值 。它接受三个参数,属性名称,类型和默认值 。

语法: attr( attribute-name? [,]? )
事例:
<p data-text="the attr function"  data-tooltip="Hi from attr!" class="attr">This text is combined with </p>css
p::after {  content: ' ' attr(data-text);}p.attr:hover::after {  content: ' ' attr(data-tooltip);  background-color: orange;  color: white}效果:
5个好用的 CSS 函数

文章插图
 
源码:https://codepen.io/protic_milos/pen/GRpYJKd
calc()这个函数使我们能够计算CSS值,而不是指定确切的值 。通常用于计算元素的大小或位置 。它支持加法、减法、乘法和除法 。
需要特别注意重要一点是+和-运算符必须用空格隔开,不然无法正常工作 。*和/运算符不有这限制,但出于一致性的考虑,建议添加空格 。
另外,很棒的是,我们可以混合CSS单位,例如,我们可以减去百分比和像素 。
我们可以用calc构建一个带有居中元素的示例:
<p class="calc">Centered with calc</p>css
p.calc {  padding: 10px;  background-color: orange;  color: white;  width: 200px;  text-align:center;  margin-left: calc(50% - 100px)}效果:
5个好用的 CSS 函数

文章插图
 
源码:https://codepen.io/protic_milos/pen/GRpYJKd
var()通过这个函数,我们可以使用一个自定义属性的值作为另一个CSS属性的值 。简单地说,我们可以定义一个颜色,例如,将它放在自定义属性(CSS变量)中,然后通过调用var函数重用该属性值 。
与CSS变量一起,该函数提高了可维护性并减少了重复 。一个用例是为网站创建主题 。
此函数接受两个参数,即自定义属性和一个默认值,如果出现问题,将使用它们 。
:root {  --bg-color: green;  --color: white}p.var {  background-color: var(--bg-color);  color: var(--color)}效果:
5个好用的 CSS 函数

文章插图
 
源码:https://codepen.io/protic_milos/pen/GRpYJKd
counter()就我个人而言,我从未使用过这种方法,但它看起来是很有趣 。这个函数返回指定计数器的当前值,需要与 counter-reset和counter-increment 配合使用 。
我们可以用它来计算其他元素,比如有序列表 。
<div class="counter">  <span>Mars</span>  <span>Bounty</span>  <span>Snickers</span></div>
5个好用的 CSS 函数

文章插图
 
源码:https://codepen.io/protic_milos/pen/GRpYJKd
circle()这个函数创建一个圆形区域来屏蔽它所应用的元素 。你可以指定它的半径和位置 。通常与图像一起使用来创建圆角形状 。此函数是clip-path属性值 。
另外,值得一提的是,除了圆之外,您还可以创建椭圆和多边形形状 。
<img class="circle"   src=https://www.isolves.com/it/cxkf/yy/CSS2/2020-09-07/"https://devinduct.com/Uploads/PostImages/1122dcb9-954a-4641-9ca6-c38e9472698f.png"/>css
img.circle {  clip-path: circle(30%);}
5个好用的 CSS 函数

文章插图
 
源码:https://codepen.io/protic_milos/pen/GRpYJKd
总结正如我之前多次提到的,在很多情况下,开发人员都忽视了CSS的可能性,因此失去了web站点的简单性 。每一年我们都可以依靠CSS为我们提供所需的设计能力,这很好,JavaScript 应该把注意力放在其他事情上,而不是设计上 。


    推荐阅读