您好,登錄后才能下訂單哦!
這篇文章主要介紹css中常有函數(shù)的有哪些,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
CSS 包含了許多函數(shù),而且它能夠完成許多早期需要用 JavaScript才能完成的事情。每年都有新的特性被添加進來,這讓我們的開發(fā)更加輕松,也減少了對JavaScript的依賴。CSS 函數(shù)是它所具有的最強大的特性之一,在本文中,我將介紹一些我認為有用的函數(shù)。
attr
函數(shù)用于獲取所選元素的屬性值。 它接受三個參數(shù),屬性名稱
,類型
和默認值
。
語法:
attr( attribute-name <type-or-unit>? [, <fallback> ]? )
事例:
<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 }
效果:
源碼:https://codepen.io/protic_milos/pen/GRpYJKd
這個函數(shù)使我們能夠計算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) }
效果:
源碼:https://codepen.io/protic_milos/pen/GRpYJKd
通過這個函數(shù),我們可以使用一個自定義屬性的值作為另一個CSS屬性的值。簡單地說,我們可以定義一個顏色,例如,將它放在自定義屬性(CSS變量)中,然后通過調用var
函數(shù)重用該屬性值。
與CSS變量一起,該函數(shù)提高了可維護性并減少了重復。一個用例是為網站創(chuàng)建主題。
此函數(shù)接受兩個參數(shù),即自定義屬性和一個默認值,如果出現(xiàn)問題,將使用它們。
:root { --bg-color: green; --color: white } p.var { background-color: var(--bg-color); color: var(--color) }
效果:
源碼:https://codepen.io/protic_milos/pen/GRpYJKd
就我個人而言,我從未使用過這種方法,但它看起來是很有趣。這個函數(shù)返回指定計數(shù)器的當前值,需要與 counter-reset
和counter-increment
配合使用。
我們可以用它來計算其他元素,比如有序列表。
<div class="counter"> <span>Mars</span> <span>Bounty</span> <span>Snickers</span> </div>
源碼:https://codepen.io/protic_milos/pen/GRpYJKd
這個函數(shù)創(chuàng)建一個圓形區(qū)域來屏蔽它所應用的元素。你可以指定它的半徑和位置。通常與圖像一起使用來創(chuàng)建圓角形狀。此函數(shù)是clip-path
屬性值。
另外,值得一提的是,除了圓之外,您還可以創(chuàng)建橢圓和多邊形形狀。
<img class="circle" src="https://devinduct.com/Uploads/PostImages/1122dcb9-954a-4641-9ca6-c38e9472698f.png" />
css
img.circle { clip-path: circle(30%); }
源碼:https://codepen.io/protic_milos/pen/GRpYJKd
以上是“css中常有函數(shù)的有哪些”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業(yè)資訊頻道!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。