八個CSS函數小技巧

2017-01-21 13:34:15 欄目:網站建設
        現在,CSS現在已經能實現比網站開發者預料到的更多的功能,并且隨著技術的發展,CSS樣式表語言越來越強大,能實現許多原先需要依靠JavaScript才能實現的功能。在這篇文章中昆山網站制作人員將會介紹CSS函數中8種有用的小技巧。 
 1.純CSS Tooltip 
      昆山網站建設人員發現,許多網站還是在使用JavaScript來創建Tooltip效果,但實際上通過CSS能更簡單的實現。最簡單的方法是在你的HTML代碼中添加一個帶有提示文本的屬性,比如data-tooltip="…"。然后你就可以在你的CSS文件中添加以下的代碼通過attr()函數來顯示提示文字: 相當簡單對吧?當然實際上我們還需要更多的代碼來給提示增加樣式,但是不用擔心,已經有了為此設計的強大且純粹的叫Hint.css的CSS庫和Balloon.css。 

      2.使用自定義數據屬性和attr()函數 
      我們已經學會如何使用attr()來創建提示,另外還有一些場景能使用到這個函數。通過與數據屬性相結合,你可以通過很簡單的一行HTML代碼來創建帶有標題和描述的縮略圖: 現在你可以通過attr()函數來顯示標題與描述: 注意:這個方法在瀏覽器支持方面可能會有一些問題,具體內容你可以查看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(),你可以結合相對和絕對的值來精確定位你的元素: 有關于這方面的詳細介紹可以閱讀@brnnbrn寫的《Aligning position:fixed Elements with CSS calc》一文。 

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

      有兩種方法使用cubic-bezier()——了解背后的機制后自己創建,或者是使用cubic-bezier生成器。 
      昆山網絡公司人員表示,更加聰明的使用CSS函數不僅僅可以解決上面的問題比如創建一個更好的網格,它還可以給你更多的創作自由。隨著瀏覽器支持越來越好,你可以使用CSS函數比如calc()來修改和提升一下你之前的CSS代碼。
與我們的項目經理聯系
掃二維碼與項目經理溝通

我們在微信上24小時期待你的聲音

解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯網交流

轉載請注明出處:昆山網站制作公司網站標題優化的幾點注意事項 - 益眾網絡
分享: