小程序中純CSS實(shí)現(xiàn)仿京東小優(yōu)惠券圖標(biāo)

效果圖:


image.png

通常情況下可以用圖片做背景圖實(shí)現(xiàn),但是,背景圖如果用png,會(huì)出現(xiàn)被拉伸變形的問題,如果用svg會(huì)有兼容問題,同時(shí)也有被拉伸變形的問題,仔細(xì)分析,這個(gè)圖標(biāo)其實(shí)是一個(gè)圓角矩形里面被兩個(gè)半圓切了左右兩邊,可以根據(jù)大小不同修改其中的數(shù)字,還可以修改部分代碼用calc來實(shí)現(xiàn)自適應(yīng):

html

<view class="small-coupon">
    <text>優(yōu)惠券1</text>
</view>

css

.small-coupon {
        display: inline-block;
        font-size: 22rpx;
        color: #F22A2A;
        padding: 5rpx 20rpx;
        margin-right: 8rpx;
        border-radius: 8rpx;
        border: 1rpx red solid;
        position: relative;
        &::before,&::after{
            content: ' ';
            display: block;
            width: 9rpx;
            height: 18rpx;
            border: 1rpx solid red;
            background-color: #fff;
            position: absolute;
            top: 10rpx;
        }
        &::before{
            border-radius: 0 18rpx 18rpx 0;
            border-left: none;
            left: -1rpx;
            
        }
        &::after{
            border-radius: 18rpx 0 0 18rpx;
            border-right: none;
            right: -1rpx;
        }
    }

代碼解析:
1、實(shí)現(xiàn)圓角矩形,這個(gè)很簡(jiǎn)單

               display: inline-block;
        font-size: 22rpx;
        color: #F22A2A;
        padding: 5rpx 20rpx;
        margin-right: 8rpx;
        border-radius: 8rpx;
        border: 1rpx red solid;
        position: relative;

2、實(shí)現(xiàn)兩個(gè)半圓,左右各一個(gè):

            &::before,&::after{
            content: ' ';
            display: block;
            width: 9rpx;
            height: 18rpx;
            border: 1rpx solid red;
            background-color: #fff; // 白色背景有用的
            position: absolute;
            top: 10rpx;
        }
&::before{
            border-radius: 0 18rpx 18rpx 0;
            border-left: none;//
            left: -1rpx; //-1位置遮住左邊框線
            
        }
        &::after{
            border-radius: 18rpx 0 0 18rpx;
            border-right: none;
            right: -1rpx; //-1位置遮右住邊框線
        }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、CSS中的屬性和取值 1.文本類屬性: text-align屬性:此標(biāo)簽內(nèi)容的水平對(duì)齊方式,內(nèi)容須為具體文字/...
    劉遠(yuǎn)舟閱讀 685評(píng)論 0 1
  • 持續(xù)更新... 這里將展示本人有關(guān)于CSS類的開發(fā)經(jīng)驗(yàn),并沒有有循序漸進(jìn),關(guān)聯(lián)性不強(qiáng),都是想到哪寫到哪,望海涵。更...
    Max_Law閱讀 1,273評(píng)論 2 11
  • 本文主要講述頁面布局樣式方面涉及的知識(shí)點(diǎn),更全面的對(duì)CSS相應(yīng)的技術(shù)進(jìn)行歸類、整理、說明,沒有特別詳細(xì)的技術(shù)要點(diǎn)說...
    Joel_zh閱讀 1,181評(píng)論 0 1
  • 第2章:背景與邊框 1.半透明邊框 背景知識(shí):RGBA/HSLA顏色-給一個(gè)容器設(shè)置白色背景和一道半透明白色邊框,...
    普通不平庸閱讀 932評(píng)論 0 1
  • 學(xué)會(huì)使用CSS選擇器熟記CSS樣式和外觀屬性熟練掌握CSS各種選擇器熟練掌握CSS各種選擇器熟練掌握CSS三種顯示...
    七彩小鹿閱讀 6,446評(píng)論 2 66

友情鏈接更多精彩內(nèi)容