首頁 web前端 css教學 幾個好用的css函數小技巧

幾個好用的css函數小技巧

Nov 20, 2017 pm 01:19 PM
css 技巧

CSS為HTML標記語言提供了一種樣式描述,定義了其中元素的顯示方式。 CSS在Web設計領域是一個突破。利用它可以實現修改一個小的樣式更新與之相關的所有頁面元素。在這篇文章中我們將會介紹CSS函數中8種有用的小技巧。

1.純CSS Tooltip

許多網站還是在使用JavaScript來創建Tooltip效果,但實際上透過CSS能更簡單的實作。最簡單的方法就是在你的HTML程式碼中加入一個帶有提示文字的屬性,例如 data-tooltip="…" 。然後你就可以在你的CSS檔案中加入以下的程式碼透過attr() 函數來顯示提示文字:

.tooltip::after {    content: attr(data-tooltip);
}

相當簡單對吧?當然實際上我們還需要更多的程式碼來為提示增加樣式,但是不用擔心,已經有了為此設計的強大且純粹的叫 Hint.css 的CSS庫和 Balloon.css 。

2.使用自訂資料屬性和 attr() 函數

我們已經學會如何使用 attr() 來建立提示,另外還有一些場景能使用到這個函數。透過與資料屬性結合,你可以透過很簡單的一行HTML程式碼來建立帶有標題和描述的縮圖:


   Illustration

現在你可以透過attr() 函數來顯示標題與說明:

.caption::after {    content: attr(data-title);
   ...
}

以下為具體的例子:

注意:這個方法在瀏覽器支援上可能會有一些問題,具體內容你可以查看 Accessibility support for CSS generated content 這篇文章。

3. CSS Counters

你可以透過CSS Counters來實現超棒的功能。這不是一個非常為人所知的屬性,大多數人甚至可能認為瀏覽器不能很好的支援這個屬性,但事實上所有的瀏覽器都支援這個屬性:

#但你不應該將CSS counters使用在有序列表

    上,它更適合使用在類似分頁或圖片庫下面顯示的數字上。你可以透過下面的範例看出如何使用很少的程式碼(甚至不使用JavaScript)來對選取的項目進行計數:

    CSS counters也非常適合顯示可透過拖放進行重新排序的項目列表上動態變化的數字:

    正如最後一個例子,我們需要記住,透過該方法產生的內容在可訪問性上可能會有些問題。

    4.CSS濾鏡實現的磨砂效果

    在iOS7中,蘋果實現了「磨砂玻璃」的效果--半透明的,模糊的元素,看起來像覆蓋了一層磨砂玻璃。受到蘋果的啟發,這種效果被運用到很多地方。在CSS濾鏡出現之前要重現這個效果還是有些棘手的。你必須透過使用 模糊圖片 來實現這種毛玻璃的效果。但現在CSS濾鏡幾乎得到了所有的主流瀏覽器的支持,所以要 重現這個效果 就簡單很多了。

    在未來,我們可以透過背景濾鏡和 filter() 函數 來達到這樣的效果,但目前只有 Safari 同時支援這兩個功能。

    有關於CSS的 filter 更多的介紹可以點擊這裡進行了解。

    5.將HTML元素當作背景

    一般我們可以設定一個JPEG或PNG檔案當背景,或是也可以設定一個漸層的背景。但是你知道可以透過使用 element() 函數,從而將一個

    設定為背景圖片嗎?現在, element() 函數只有在Firefox中得到了支援:

    可能性是無止境的, 這裡 是MDN上的一個例子。

    有關於CSS的 element() 函數的相關介紹可以點擊這裡。

    6.透過 calc() 創造更好的網格

    流體網格雖然很棒但是仍然存在很嚴重的問題。例如,在頂部和底部的間距大小幾乎不可能與在左邊和右邊的間距大小相同。另外,若使用的網格系統不一樣,標記就會非常混亂。雖然彈性佈局不是最終的解決方案,但是透過與 calc() (可以在CSS檔案中作為屬性值)結合,我們能夠創建一個更好的網格。在 這裡 ,George Martsoukos列舉了許多例子,例如擁有完美間距的畫廊網格。透過使用CSS預編譯語言,例如Sass, 組成一個創造性的網格系統 可以非常簡單且易於維護。同時瀏覽器對 calc() 的支援幾乎完美,因此 calc() 絕對是你應該掌握的功能。

    有關於CSS的 calc() 函數相關的介紹可以點這裡。

    7. 透過 calc() 對齊 position:fixed 元素

    calc() 的另一個作用是用來對齊 position:fixed 的元素。例如,你有一個內容封裝器,它左右都有流動的間距,你希望在這個內容封裝器內精確對齊position 為fixed 的元素,但是這種情況下要計算出left 和right 屬性的具體賦值就很困難。透過calc() ,你可以結合相對和絕對的值來精確定位你的元素:

    .wrapper {    max-width: 1060px;    margin: 0 auto;
    }.floating-bubble {    margin: 0 auto;
    }.floating-bubble {    position : fixed;    right: calc(50% - 530px); /* 50% - half your wrapper width */}

    #例如:

    有關於這方面的詳細介紹可以閱讀 @brnnbrn 寫的《 Aligning position:fixed Elements with CSS calc 》一文。

    8.使用cubic-bezier() 實作動畫

    為了讓一個網站或APP的使用者介面更具有吸引力,你可使用一些動畫,但是可以選擇的過渡效果的速度曲線是相當有限的,例如, linear 或ease-in-out 。而標準的速度曲線連彈性運動的效果都實現不了。透過使用 cubic-bezier() 函數,你可以精確地實現你想要的動畫效果。

    有兩種方法使用 cubic-bezier() -了解 背後的機制 後自己創建,或是使用 cubic-bezier 產生器 。

    說實話,我使用的是後者。

    有關於 cubic-bezier() 詳細的介紹可以點這裡。

    總結

    更聰明的使用CSS函數不僅可以解決上面的問題例如創建一個更好的網格,它還可以給你更多的創作自由。隨著瀏覽器支援越來越好,你可以使用CSS函數例如 calc() 來修改和提升一下你之前的CSS程式碼。

    本文根據 @Anselm Urban 的 《8 Clever Tricks with CSS Functions》 所譯,整個譯文帶有我們自己的理解與思想,如果譯得不好或有不對之處還請同行朋友指點。如需轉載此譯文,需註明英文出處: https://www.sitepoint.com/8-clever-tricks-with-css-functions 。

    以上就是8個css函數小技巧,覺得不錯的朋友們趕緊收藏起來吧。

    相關推薦:

    Jquery css函數實作動態操縱DOM節點的樣式

    CSS3 畫出各種基本圖形小技巧

    最完整的CSS開發常用技巧

    ####

    以上是幾個好用的css函數小技巧的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1319
25
PHP教程
1269
29
C# 教程
1248
24
vue中怎麼用bootstrap vue中怎麼用bootstrap Apr 07, 2025 pm 11:33 PM

在 Vue.js 中使用 Bootstrap 分為五個步驟:安裝 Bootstrap。在 main.js 中導入 Bootstrap。直接在模板中使用 Bootstrap 組件。可選:自定義樣式。可選:使用插件。

了解HTML,CSS和JavaScript:初學者指南 了解HTML,CSS和JavaScript:初學者指南 Apr 12, 2025 am 12:02 AM

WebDevelovermentReliesonHtml,CSS和JavaScript:1)HTMLStructuresContent,2)CSSStyleSIT和3)JavaScriptAddSstractivity,形成thebasisofmodernWebemodernWebExexperiences。

HTML,CSS和JavaScript的角色:核心職責 HTML,CSS和JavaScript的角色:核心職責 Apr 08, 2025 pm 07:05 PM

HTML定義網頁結構,CSS負責樣式和佈局,JavaScript賦予動態交互。三者在網頁開發中各司其職,共同構建豐富多彩的網站。

bootstrap怎麼寫分割線 bootstrap怎麼寫分割線 Apr 07, 2025 pm 03:12 PM

創建 Bootstrap 分割線有兩種方法:使用 標籤,可創建水平分割線。使用 CSS border 屬性,可創建自定義樣式的分割線。

bootstrap怎麼插入圖片 bootstrap怎麼插入圖片 Apr 07, 2025 pm 03:30 PM

在 Bootstrap 中插入圖片有以下幾種方法:直接插入圖片,使用 HTML 的 img 標籤。使用 Bootstrap 圖像組件,可以提供響應式圖片和更多樣式。設置圖片大小,使用 img-fluid 類可以使圖片自適應。設置邊框,使用 img-bordered 類。設置圓角,使用 img-rounded 類。設置陰影,使用 shadow 類。調整圖片大小和位置,使用 CSS 樣式。使用背景圖片,使用 background-image CSS 屬性。

bootstrap怎麼設置框架 bootstrap怎麼設置框架 Apr 07, 2025 pm 03:27 PM

要設置 Bootstrap 框架,需要按照以下步驟:1. 通過 CDN 引用 Bootstrap 文件;2. 下載文件並將其託管在自己的服務器上;3. 在 HTML 中包含 Bootstrap 文件;4. 根據需要編譯 Sass/Less;5. 導入定製文件(可選)。設置完成後,即可使用 Bootstrap 的網格系統、組件和样式創建響應式網站和應用程序。

bootstrap怎麼調整大小 bootstrap怎麼調整大小 Apr 07, 2025 pm 03:18 PM

要調整 Bootstrap 中元素大小,可以使用尺寸類,具體包括:調整寬度:.col-、.w-、.mw-調整高度:.h-、.min-h-、.max-h-

bootstrap按鈕怎麼用 bootstrap按鈕怎麼用 Apr 07, 2025 pm 03:09 PM

如何使用 Bootstrap 按鈕?引入 Bootstrap CSS創建按鈕元素並添加 Bootstrap 按鈕類添加按鈕文本

See all articles