使用css創建一個優惠券的方法

  發布時間:2019-10-21 14:27:16   作者:佚名   我要評論
這篇文章主要介紹了使用css創建一個優惠券的方法,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下

需求場景

添加優惠券類目,展示用戶的優惠券

常見的設計樣式如下圖,核心為半圓

 

分步拆解

優惠券的特點是帶有反向圓角,為了展示效果更好,適配多種場景,不推薦使用背景圖片形式,建議使用 css .

網上有幾種方案:

一種是 boder+clip 的形式,裁剪出4個小半圓角,拼湊在一起

一種是 radial-gradient 徑向漸變,相對上一種需要考慮其兼容性

一種是使用背景圖片,特點是加載稍慢,體驗比 css 差,兼容性好

具體的代碼這里就不一一演示了

參考其他網上內容: http://www.gttraq.live/css/604652.html

注意細節

有一點要說明的是:

一定要注意細節,就像考慮到兼容性和帶寬以及加載時長一樣,我們也要為以后可能的變動留有空間.

前兩種方案的特點是左右的容器都有背景色,且半圓的邊框色是有背景色截取而獲得的.

當我們需要指定半圓的邊框和其他邊框顏色同時變換不同背景色的時候呢?

參考下圖:

邊框色和背景色可以是不一致的,并且整個邊框顏色可以保持一致,而這些,上述兩種方法不論是 border 還是 gradient 顯然不行.

 

其他方法

優惠券的樣式是兩部分拼接在一起,同時帶有半圓樣式

那么我們的思路可以是:

創建一個盒子,包含左右兩個卡券部分,卡券背景色各自定義
盒子上蓋上兩個半圓,一個在頂部,一個在底部,背景色為白色
卡券和半圓的邊框都可以自定義,同色使用一個色號即可

直接使用 css 創建一個嵌有半圓的邊框不太現實,但是我們可以通過其他方法達到視覺上的實現.

中間需要一些空間思維和想象能力,過程可能復雜些,但是能實現目的就行,另辟蹊徑的效果更好.

創建一個總容器

容器控制卡券的寬高和布局上位置,不帶有其他樣式

 
 

創建左右卡券

添加兩個容器,一個放左邊,一個放右邊,割分總容器空間

左邊容器單獨設置左上和左下兩個圓角,右邊容器單獨設置右上和右下兩個圓角

左右容器各自設置自定義背景色

 

貼上半圓

添加兩個半圓,背景色為白色,邊框待定

相對總容器絕對定位,一個放頂部,一個放底部

偏移量自定義,保持一致即可

到這一步就完成了最初的樣式,接下來到了設置邊框的時間

 

設置邊框

給左右卡券容器和兩個半圓添加邊框即可,不影響背景色

 

制作半圓

核心是制作半圓(只有輪廓)

<div class="circle"></div>
// 上半圓
.circle{
    width: 200px;
    height: 100px; /* 寬度的一半 */
    border-radius:100px 100px 0 0; /* 上和右為高度的長度 */
    background-color: #fff;
    border: 1px solid gray;
    border-bottom: none;
}
// 下半圓
.circle{
    width: 200px;
    height: 100px; /* 寬度的一半 */
    border-radius: 0 0 100px 100px; /* 上和右為高度的長度 */
    background-color: #fff;
    border: 1px solid gray;
    border-bottom: none;
}

總結

以上所述是小編給大家介紹的使用css創建一個優惠券的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

相關文章

最新評論

福建体育彩票时时彩11