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程式碼來建立帶有標題和描述的縮圖:
現在你可以透過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() 函數,從而將一個
可能性是無止境的, 這裡 是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 */}
以上是幾個好用的css函數小技巧的詳細內容。更多資訊請關注PHP中文網其他相關文章!

鏈接CSS文件到HTML可以通過在HTML的部分使用元素實現。 1)使用標籤鏈接本地CSS文件。 2)多個CSS文件可通過添加多個標籤實現。 3)外部CSS文件使用絕對URL鏈接,如。 4)確保正確使用文件路徑和CSS文件加載順序,優化性能可使用CSS預處理器合併文件。

選擇Flexbox還是Grid取決於佈局需求:1)Flexbox適用於一維佈局,如導航欄;2)Grid適合二維佈局,如雜誌式佈局。兩者在項目中可結合使用,提升佈局效果。

包含CSS文件的最佳方法是使用標籤在HTML的部分引入外部CSS文件。 1.使用標籤引入外部CSS文件,如。 2.對於小型調整,可以使用內聯CSS,但應謹慎使用。 3.大型項目可使用CSS預處理器如Sass或Less,通過@import導入其他CSS文件。 4.為了性能,應合併CSS文件並使用CDN,同時使用工具如CSSNano進行壓縮。

是的,youshouldlearnbothflexboxandgrid.1)flexboxisidealforone-demensional,flexiblelayoutslikenavigationmenus.2)gridexcelstcelsintwo-dimensional,confffferDesignssignssuchasmagagazineLayouts.3)blosebothenHancesSunHanceSlineHancesLayOutflexibilitibilitibilitibilitibilityAnderibilitibilityAndresponScormentilial anderingStruction

重構自己的代碼看起來是什麼樣的?約翰·瑞亞(John Rhea)挑選了他寫的一個舊的CSS動畫,並介紹了優化它的思維過程。

CSSanimationsarenotinherentlyhardbutrequirepracticeandunderstandingofCSSpropertiesandtimingfunctions.1)Startwithsimpleanimationslikescalingabuttononhoverusingkeyframes.2)Useeasingfunctionslikecubic-bezierfornaturaleffects,suchasabounceanimation.3)For

@keyframesispopularduetoitsversatoryand and powerincreatingsmoothcsssanimations.keytricksinclude:1)definingsmoothtransitionsbetnestates,2)使用AnimatingMultatingMultationMultationProperPertiessimultane,3)使用使用4)使用BombingeNtibalibility,4)使用CombanningWiThjavoFofofofoftofofo

CSSCOUNTERSAREDOMANAGEAUTOMANAMBERINGINWEBDESIGNS.1)他們可以使用forterablesofcontents,ListItems,and customnumbering.2)AdvancedsincludenestednumberingSystems.3)挑戰挑戰InclassINCludeBrowsEccerCerceribaliblesibility andperformiballibility andperformissises.4)創造性


熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

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

熱門文章

熱工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

記事本++7.3.1
好用且免費的程式碼編輯器

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。