用 CSS3 畫心形和搜索放大鏡圖標

2021-02-20 UI設計自學平臺

1、先來個class="heart"的div

<div class="heart"></div> 

2、講上面的 div 整成紅色的正方形,然後轉 45 度變成個菱形樣

.heart { 

    position: relative; 

    width: 300px; 

    height: 300px; 

    transform: rotate(45deg); 

    -ms-transform: rotate(45deg); 

    -moz-transform: rotate(45deg); 

    -webkit-transform: rotate(45deg); 

    -o-transform: rotate(45deg); 

    background: red; 

3、通過:after和:before偽元素,畫兩個一樣大小的圓

.heart:before, .heart:after { 

    position: absolute; 

    display: block; 

    content: ''; 

    width: 300px; 

    height: 300px; 

    border-radius: 100%; 

    background: red; 

4、把上面的兩個圓移到div適當的位置,心形就出來了

.heart:before { 

    left: -50%; 

    top: 0; 

.heart:after { 

    right: 0; 

    top: -50%; 

5、最後效果,可以給它加個 css3 動畫效果,實現心臟跳動的動畫(縮小一倍後居中顯示):

1、新建個div,或者span什麼的

<span class="ex-search"></span> 

.ex-search { 

    position: relative; 

2、用:before偽元素畫一個圓並給一些內陰影,內陰影根據需要調整

.ex-search:before { 

    content: ' '; 

    position: absolute; 

    width: 30px; 

    height: 30px; 

    border: 1px solid #666; 

    border-radius: 30px; 

    box-shadow: inset 1px 1px 10px rgba(0,0,0,.3); 

3、用:after偽元素畫一個放大鏡手柄狀圖,要是夠無聊還可以 css3 漸變一下,並旋轉 45 度,旋轉度數可以按自己需要設定

.ex-search::after { 

    content: ' '; 

    position: absolute; 

    width: 18px; 

    height: 5px; 

    background: #666; 

    border-radius: 5px 0 0 5px; 

    -webkit-transform: rotate(225deg); 

    -moz-transform: rotate(225deg); 

    -ms-transform: rotate(225deg); 

    -o-transform: rotate(225deg); 

    transform: rotate(225deg); 

4、把上面兩部畫的圖形移動到一起組合成一個放大鏡的圖標,實際位置根據實際情況調整

.ex-search:before { 

    top: 0; 

    left: 0; 

.ex-search:after { 

    right: -42px; 

    bottom: -36px; 

5、最後效果,可以結合其他 hover 什麼的效果使用

在字體圖標面前,這些都是浮雲,就是無聊玩玩

覺得本文對你有幫助?請分享給更多人

關注「網頁設計自學平臺」快速提升技能

來源:愛思資源網

每天學一點·小白快速進階大神

微信ID:WEB_wysj

▲長按二維碼關注

▼戳閱讀原文入群免費領取全套視頻

相關焦點

  • 9個非常實用的CSS圖標庫
    關注前端潮咖,每日精選好文以前網頁上顯示圖標都是用切成小圖片,然後根據不同場景作多個小圖,通過js來控制顯示效果。
  • 【工具】分享 9 個非常實用的 CSS 圖標庫
    以前網頁上顯示圖標都是用切成小圖片,然後根據不同場景作多個小圖,通過js來控制顯示效果。
  • 二次元CSS丨用 DIV + CSS3 畫小丸子和爺爺
    僅僅使用 div 作為身體的布局,用 css3 的各種 transform 和圓角屬性來繪製各部位的形狀,當然也不會使用任何圖片哦。
  • 手把手教你打造一個純CSS圖標庫
    在web開發中,我們經常要用到一些小圖標(加減勾叉等)。通常做法就兩種:直接使用圖片;使用css/svg直接在瀏覽器中繪製圖標。方案1:由於圖標圖片比較多,而且體積很小,為了減少請求所以很多時候我們會用雪碧圖這種技術來將圖標拼湊在同一張圖片裡面。
  • 【css面試題】用css畫0.5px的線條
    本系列文章更新前端面試中關於css的題目面試官:用css實現正方形的0.5px邊框應聘者:這個簡單,代碼如下<!面試官:其實你可以通過縮放來實現應聘者:我想到解決辦法了,思路是:對正方形的標籤元素設置一個偽元素,畫一個兩倍大小的正方形 ,但邊框線條大小仍為1px通過transform的scale來將偽元素縮放為原來的一半,此時的邊框已經是0.5px了將偽元素的定位設置為
  • 妙用CSS變量與calc()高逼格地實現放大鏡效果
    calc()雖然好用,但新手難免會遇到一些坑,謹記以下特點,相信就能玩轉calc()了。運算順序:遵循加減乘除運算順序,可用()提升運算等級第三點尤為重要,若未能遵守,瀏覽器直接忽略該屬性。放大鏡基於上述需求,實時獲取滑鼠的左偏移量和上偏移量即可,而這兩個偏移量是相對父節點的。通過左偏移量和上偏移量結合calc()即可計算放大鏡顯示內容相對父節點的顯示位置。event提供以下八個偏移量,若不了解其概念很易發生混淆。
  • 【暖寶寶】放大鏡
    放大鏡可以用來當老爺爺的眼鏡,因為老爺爺的眼睛看不清楚很小很小的東西。   老師和孩子們一起在哈哈樓五樓發現了投影儀可以把電腦屏幕放大。既然有這麼多小朋友發現礦泉水瓶可以把東西放大,那我們就一起動手用礦泉水瓶做一個放大鏡吧!
  • 隱藏搜索框:CSS 動畫正反向序列
    因此,也有一個挺常見的做法是,只放一個搜索圖標,需要時再顯示整個搜索框,如下圖所示:css 中有 transition 和 animation 兩種方式來實現動畫效果,由於這裡只有搜索框位置移動、圖標透明度改變兩個簡單效果,用 transition 就足夠了。
  • 『AI教程』如何用Illustrator從零開始繪製一枚線性圖標
    當我想要用圖標來表現一個物體時,我會先仔細觀察,然後儘可能將其拆分為最簡單的形狀。譬如,水滴可以用一個三角形和一個圓圈組成。心形圖標可以由兩個圓圈和一個三角形組成。2、拖拽滑鼠,畫出形狀這樣可以保持所有圖標的整體性和一致性。4、畫出另一個圓角矩形,作為蓋子。
  • CSS之字體圖標知多少
    正如你所看到的,現在市面上大多數網頁使用的圖標都是類似這樣的形式,也有不少icon圖標庫可供我們使用,它的實現方式有:1、Icon Font2、CSS Sprites3、使用image4、SVG(目前來看,是最完美的)5、CSS手寫icon(太麻煩,而且自己做往往不好看(這時候你需要一個UI小姐姐的幫助))
  • 能用html/css解決的問題,就不要用JS !!!
    作者:會變成的銀豬來源:http://yincheng.site/using-html-css-instead-of-js導航高亮是一種很常見的問題,包括當前頁面的導航在菜單裡面高亮和hover時高亮。你可以用js控制,但是用一點CSS技巧就可以達到這個目的,不需要使用JS。
  • 翻譯 圖標是怎樣煉成的
    例如Kem Bardly的柯基犬圖標,狗的頭部是由兩個三角形和兩個橢圓組成的。一開始只需要描繪出最大的最簡單的形狀,然後再添加更多的細節——就像作畫的步驟,也是先畫簡單的形狀,然後逐步細化。切記,做圖標時只要增加能夠傳達概念的細節即可。
  • 在 iPhone 上快速打開隱藏的放大鏡功能的 6 種方法
    ,但直到 iOS 14 進行了重大升級(例如新界面,可隱藏控制項,可自定義工具欄,改進的濾鏡管理,多種功能,圖像拍攝和人物檢測。使用控制中心切換自 iOS 11 以來,快速訪問放大鏡的另一種方法是在控制中心中使用其可選控制項。在控制中心中添加放大鏡選項後,在控制中心中即可按鍵打開。3. 使用隱藏的應用程式圖標如果你運行的是 iOS 14 或更高版本,則在設置中啟用該功能後,「放大器」應用圖標會在主屏幕上顯示。
  • 乾貨 | Sketch畫圖標技巧+源文件分享
    今天葉哥給大家分享我用Sketch畫的100個店鋪類圖標的設計思路,我在繪製的過程中呢,一開始還是覺得SK不如AI,後來總結出了一些實用小技巧,於是對SK又有了新的認識(真香),效率提高了不少。在後臺回復文末提到的關鍵字即可獲取我的源文件(格式分別為sketch、ai、svg),大家也可以在iconfont上搜索SUPERYEAH_098,下載單個圖標以及在線修改顏色。好了話不多說咱們開始。
  • 用放大鏡看宇宙
    把一個小東西放在放大鏡下,可以清晰看到細節;如果在陽光下,放大鏡還可以將陽光聚焦到一個點上,可以點燃報紙,可以燒得螞蟻四處亂跑。玩得不亦樂乎。        後來上了初中,才知道放大鏡的原理,原來,放大鏡就是一個凸透鏡。
  • 用純CSS畫2021
    聽大一學生說的最多的就是只學了css沒啥用,想學js。哈哈,參考網上教程做了一個純css的「2021」紀念第一個工作日。
  • 圖標字體 VS 雪碧圖——圖標字體應用實踐
    Chrome同時最多加載資源數為6個雪碧圖的製作方法可以用node的一個的包css-sprite,十分地方便。只要將圖標做好,放到相應的文件夾裡面,寫好配置文件運行,就能夠生成相應的圖片和css,無需自己手動去調整位置等css屬性。
  • 幾個心形圖數學函數,matlab畫圖
    笛卡爾心形函數第一個當然是大名鼎鼎的笛卡爾心形函數,它的平面直角坐標系方程為:其中 a 是一個可調參數,下面的圖為 a=1 時的圖像。函數1經過網上搜索,平面坐標系中,下面的函數最像普通的心形圖像,而且函數形式簡單,不需要分段。
  • CSS 巧用 :before和:after
    今天主要想在這篇學習筆記中寫的也不多,主要是針對:before和:after寫一些內容,還有幾個小樣式略微帶過的介紹下。什麼是:before和:after? 該如何使用他們?:before是css中的一種偽元素,可用於在某個元素之前插入某些內容。:after是css中的一種偽元素,可用於在某個元素之後插入某些內容。
  • 能用HTML/CSS解決的問題就不要使用JS!
    導航高亮導航高亮是一種很常見的問題,包括當前頁面的導航在菜單裡面高亮和hover時高亮。你可以用js控制,但是用一點CSS技巧就可以達到這個目的,不需要使用JS。這個其實也好解決,只要在menu上面再畫一個透明的區域就好了,如下藍色的方塊: