摘要:理解這一點讓上邊和下邊也變成三角形就簡單了,將元素的屬性設(shè)為現(xiàn)在上下左右個邊框都是三角形了。實例二制作快進(jìn)按鈕效果為了減少頁面的元素,我們可以只提供一個元素實現(xiàn)第個三角形,然后借助的偽類實現(xiàn)第個三角形。
有一次筆者在參加前端面試的過程中被面試官問到這樣一個問題: BootStrapt里面的圖標(biāo)是怎么樣的?
用過Bootstrapt的開發(fā)者都知道,在Bootstrapt里面有一個圖標(biāo)組件,引用這個文件之后,就可以通過給元素添加類名來給元素添加相應(yīng)的圖標(biāo),并且這個圖標(biāo)還可以改變顏色和大小。那么它是怎么實現(xiàn)的呢?
大家首先想到的最通用的添加圖標(biāo)的方法就是以圖片的形式添加,但是仔細(xì)想一想,圖片能改變顏色嗎?
大家再想想,字體可以改變顏色和大小。而且CSS3支持web字體,使得圖標(biāo)的變化更為豐富,于是就有人用字體制作了圖標(biāo)。但是,我們今天要講的是功能更強(qiáng)的圖標(biāo)制作方案:用純生html和css制作圖標(biāo)。
下面從最簡單的實例開始教大家如何使用CSS制作icon
1.三角形圖標(biāo)
效果圖:
詳細(xì)講解實現(xiàn)過程:
首先,實現(xiàn)長方形邊框
HTML的塊級元素都是長方形的,比如我們設(shè)定了以下樣式:
這個長方形太單調(diào)了,再給它點顏色看看,咱們來個彩色邊框吧。
請注意長方形的4個角,以左上角為例,它到底是屬于左邊框還是上邊框呢?
左上角,既屬于左邊框,又屬于上邊框,角落的歸屬成了一個問題,瀏覽器為了不讓邊框打架,就讓二位各分一半吧。于是乎左上角就被一分為二,變成了兩個三角形,三角形靠近哪個邊框,就顯示那個邊框的顏色。
三角形的實現(xiàn)
我們把上面這個彩色邊框的矩形內(nèi)容拿掉,看看會發(fā)生什么。
嗚,cool!左邊和右邊都是三角形了 耶!
為什么上邊和下邊還是梯形呢?這是因為塊級元素默認(rèn)會在頁面上水平平鋪。
理解這一點讓上邊和下邊也變成三角形就簡單了,將元素的width屬性設(shè)為0:
現(xiàn)在上下左右4個邊框都是三角形了。
如何制作成三角形呢?把三個邊框設(shè)置成透明試一試!
2.下面是一個實現(xiàn)旗幟的效果:
根據(jù)以上知識,我們很自然地就能想到實現(xiàn)方法,將border-bottom的顏色設(shè)置為透明的。
/*CSS:*/ .flag { width: 0; height: 0; border: 2rem solid #FF6600; border-top-width: 4rem; border-bottom-color: transparent; border-bottom-width: 2rem; }
實例二:制作快進(jìn)按鈕效果
為了減少頁面的HTML元素,我們可以只提供一個元素實現(xiàn)第1個三角形,然后借助CSS3的偽類實現(xiàn)第2個三角形。
第1個三角形使用了相對定位,第2個三角形使用了絕對定位,使得第2個三角形能夠緊挨著第1個三角形。
/*CSS:*/ .rds-arrow-wrapper { position: relative; width: 20em; text-align: center; } .rds-arrow, .rds-arrow:after { display: inline-block; position: relative; width: 0; height: 0; border-top: 1rem solid transparent; border-left: 2rem solid #eae; border-bottom: 1rem solid transparent; border-right: 2rem solid transparent; } .rds-arrow { margin-left: 1rem; } .rds-arrow:after { content: ""; position: absolute; left: 100%; top: -1rem; bottom: 0; }
需要注意的是,箭頭方向是向右的,但在CSS里面是通過border-left的顏色來控制的。
經(jīng)過以上兩個例子,大家對制作圖案的原理都有初步的了解了吧。下面的實例三將帶領(lǐng)大家制作一個常用的icon圖標(biāo),相信大家學(xué)習(xí)了之后,發(fā)散自己的思維,就可以制作出更多的圖案。
Home
好了,下面該是你設(shè)計出自己圖案的時候了~
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/111555.html
摘要:編寫配置文件,以下是關(guān)鍵配置代碼雪碧圖合并輸出到文件參數(shù)執(zhí)行目錄參數(shù)生成的和圖片的文件名之所以推薦,是因為非常的靈活,看懂模塊的可以根據(jù)你的項目情況編寫對應(yīng)的配置文件。 showImg(https://segmentfault.com/img/bVGpAw?w=518&h=156); 前言 網(wǎng)站開發(fā)90%會用到小圖標(biāo), 多小圖標(biāo)調(diào)用顯示是前端開發(fā)常見的問題;目前小圖標(biāo)顯示常見有兩種方式...
摘要:所以實現(xiàn)小圖標(biāo)時雪碧圖跟圖標(biāo)字體會在一個網(wǎng)站共存,自定義圖標(biāo)字體為什么比較耗時,且太復(fù)雜圖標(biāo)無法實現(xiàn)請往下看開發(fā)流程就了解了。參考資料細(xì)談淺談圖標(biāo)字體向下兼容優(yōu)雅降級技術(shù)繪制小圖標(biāo)技巧雪碧圖圖標(biāo)字體矢量小圖標(biāo)設(shè)計本文對應(yīng)源碼源碼地址演示地址 showImg(https://segmentfault.com/img/bVRnAC?w=431&h=220); 之前寫了一篇關(guān)于雪碧圖的博文,...
摘要:使用說明圖標(biāo)字體只能被渲染成單色,不能生成彩色圖標(biāo)。自動生成預(yù)覽網(wǎng)站,預(yù)覽字體文件。創(chuàng)建最大輸入圖標(biāo)寬度的等寬字體。輸出的字體高度默認(rèn)為最高輸入圖標(biāo)的高度。自動生成樣式和。 一般情況我通過 iconfont 或者 icomoon 來實現(xiàn)圖標(biāo)管理生成字體,導(dǎo)入到項目中使用。 ┌────────┐ ┌────────────...
摘要:使用說明圖標(biāo)字體只能被渲染成單色,不能生成彩色圖標(biāo)。自動生成預(yù)覽網(wǎng)站,預(yù)覽字體文件。創(chuàng)建最大輸入圖標(biāo)寬度的等寬字體。輸出的字體高度默認(rèn)為最高輸入圖標(biāo)的高度。自動生成樣式和。 一般情況我通過 iconfont 或者 icomoon 來實現(xiàn)圖標(biāo)管理生成字體,導(dǎo)入到項目中使用。 ┌────────┐ ┌────────────...
摘要:全解法如何在文件里扣出圖層里的圖標(biāo)右鍵選中這個圖層右擊這個圖層把這個圖層放到新文件點擊圖片的按鈕自動切圖到最小再調(diào)整一下畫布大小將圖片設(shè)置為長寬一樣導(dǎo)出即可在頁面里圖片會默認(rèn)保持比例所以只要設(shè)置寬高的其中一種就可以了摳圖的前端現(xiàn)在基本沒有了 CSS4:icon全解 1.img法 1.1如何在psd文件里扣出圖層里的圖標(biāo) 右鍵選中這個圖層showImg(https://segmentf...
閱讀 1382·2021-10-14 09:43
閱讀 4226·2021-09-27 13:57
閱讀 4558·2021-09-22 15:54
閱讀 2557·2021-09-22 10:54
閱讀 2370·2021-09-22 10:02
閱讀 2113·2021-08-27 13:11
閱讀 872·2019-08-29 18:44
閱讀 1645·2019-08-29 15:20