PHP建站技术分享-从入门到精通PHP建站技术分享-从入门到精通PHP建站技术分享-从入门到精通

QQ:420220301 微信/手机:150-3210-7690
当前位置:首页 > CMS教程 > Fastadmin

一个纯CSS的领红包界面

管理员 2024-12-14
Fastadmin
21

老规矩先看效果

这里我用的color-ui,开局先整一个 model 来一个背景

<view class="cu-modal show">    <view class="cu-dialog ">    <view class="bg-red">        哈哈    </view>    </view></view>

image.png

我们在给他一个高宽 这里限宽度是 在cu-dialog

<view class="cu-modal show">    <view class="cu-dialog" style="width: 600rpx;">    <view class="bg-red" style="height: 800rpx;">        哈哈    </view>    </view></view>

image.png

看起来像那么一回事了
接下来我们要做上半部部分加半个圆圈进去

...<view class="bg-red" style="height: 800rpx;">      <view class="top" /></view>...<style>.top {    // 开启定位模式    position: relative;    // 宽一定要大不然这个半圆弧形起不来    width: 200%;    // 限制高度    height: 600rpx;    // 我们只需要下半生是弧形    border-radius: 0 0 50% 50%;    // 按需调整所在位置    left: -51%;    // 颜色必须给整上    background: #F26057;    // 再加上一点阴影    box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.5);}</style>

image.png

完美。接下来我们再加一个圈圈

...<view class="bg-red" style="height: 800rpx;">      <view class="top" />      <view class="middle" /></view>...<style>.top {...}.middle{    // 开启定位    position: relative;    // 半圆是占位的所以要用负数上移    top: -80rpx;    // 设置size    width: 180rpx;    height: 180rpx;    // 外边剧只要自动都会自动对左右保持距离剧中    margin: auto;    // 这是一个完整的圆形    border-radius: 50%;    // 背景色取自截图    background: #ebcc9d;    // 当然需要一个阴影撒    box-shadow: 1px 2px 5px rgba(0, 0, 0, 0.5);    }</style>

image.png

nice 是不是像那么一回事了
这中间还有个 开 字 我赌我多年的设计经验 这是思远的宋体 来 我们上AI

image.png
就它了 我们创建一下轮廓
image.png
导出
image.png
设置为svg格式
image.png
用文本编辑器打开
image.png

这里我们不需要样式 删除<defs><style> 标签
得到如下一大串

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 65.53 70.56"><g id="图层_2" data-name="图层 2"><g id="图层_1-2" data-name="图层 1"><path class="cls-1" d="M7,25.27V67.82C6.32,70,2.25,70.71,0,70.54V.77L7.37,4.11h12L22.55.54l7,5.35a4.46,4.46,0,0,1-2.81,1.4v19.3c-.89,1.49-5,2.35-6.68,2.17V25.27ZM7,6.36v7.13H20.05V6.36ZM20.05,23V15.66H7V23ZM41.23,48.6V65.34c-1,1.41-4.39,1.71-6.3,1.63V48.6H26.58Q25.13,61.69,12.07,67.67l-.76-.93q8.28-6.67,9.27-18.14H11.16l-.61-2.17h10.1c.15-1.51.05-9.32.08-11.08h-7.9l-.6-2.25H40.62l3.65-4.81q4.09,3.33,6.61,5.81c-.23,2.37-8.2.83-9.65,1.25V46.43h1.22l3.49-4.81q3.95,3.35,6.38,5.74C52,49.78,42.76,48.15,41.23,48.6Zm-6.3-2.17V35.35h-8c0,1.83.07,9.48-.08,11.08ZM65.53,6A5.58,5.58,0,0,1,62.34,7.6V61.47c-.06,6.75-2.22,8.11-9.11,9.07-.29-5.39-1.68-6.53-6.61-7.68V61.78c5-.23,7.81,1.89,8.66-1.09V25.27H41.69c.35,2.57-4.79,3.08-6.76,3V1.08l7.06,3H54.52L57.86,0Zm-23.84.39v7.13H55.28V6.36ZM55.28,23V15.66H41.69V23Z"/></g></g></svg>

接下里我们继续 在这个圆圈里面 加上这个字

...<view class="bg-red" style="height: 800rpx;">      <view class="top" />      <view class="middle" >          <view class="open">              <svg.....>          </view>      <view/></view>...

image.png
字太大了 我们调整一下size

<style>.top {...}.middle{...   }.open{    // 设置size    width: 60rpx;    // 外边距自动剧中    margin: auto;    // 给个上面的边距让他下来一点点????    padding-top: 60rpx;}</style>

image.png
完美 接下来我们要做动画 以下是style

<view class="bg-red" style="height: 800rpx;">      <view class="top" />      <view class="middle open-anim" >          <view class="open">              <svg.....>          </view>      <view/></view><style>.top {...}.middle{...   }.open{...}// 定义一个open动画@keyframes open {    0% {        // 一开始Y轴为0      transform: rotateY(0deg);    }    100% {        // 结束的时候转一圈       transform: rotateY(360deg);    }}.middle.open-anim {    // 3秒 open动画 循环播放 线性动画    animation: 3s open infinite linear;}</style>

还真像这么一回事了 不过我看见 微信里是一个铜板 有厚度的
我看勒一遍 css 3D 文档 基本上不好实现 就放过铜板吧

收工

再做一个点击后 加一个class

红包后3个状态 一个是 没点击 一个是 打开中 一个是现实领到多少钱 其他这些我就不做示范了。
夜深了 该洗澡了

<view class="cu-modal show">            <view class="cu-dialog" style="width: 600rpx;">                <view class=" red-packet" style="height: 800rpx;">                    <view class="top" >                        <view style="top: 20%; position: relative; color: #ffeab4;">                            <view class=" cu-avatar round xl" style="background-image:url(https://ossweb-img.qq.com/images/lol/web201310/skin/big81005.jpg);"></view>                            <view class="text-bold margin-top "> 来自默毅传媒的红包</view>                            <view>                                <text class="text-bold" style="font-size: 99rpx;">99.99</text>                            </view>                        </view>                    </view>                    <view class="middle open-anim">                        <view class="open">                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 65.53 70.56">                                <g id="图层_2" data-name="图层 2">                                    <g id="图层_1-2" data-name="图层 1">                                        <path class="cls-1"                                            d="M7,25.27V67.82C6.32,70,2.25,70.71,0,70.54V.77L7.37,4.11h12L22.55.54l7,5.35a4.46,4.46,0,0,1-2.81,1.4v19.3c-.89,1.49-5,2.35-6.68,2.17V25.27ZM7,6.36v7.13H20.05V6.36ZM20.05,23V15.66H7V23ZM41.23,48.6V65.34c-1,1.41-4.39,1.71-6.3,1.63V48.6H26.58Q25.13,61.69,12.07,67.67l-.76-.93q8.28-6.67,9.27-18.14H11.16l-.61-2.17h10.1c.15-1.51.05-9.32.08-11.08h-7.9l-.6-2.25H40.62l3.65-4.81q4.09,3.33,6.61,5.81c-.23,2.37-8.2.83-9.65,1.25V46.43h1.22l3.49-4.81q3.95,3.35,6.38,5.74C52,49.78,42.76,48.15,41.23,48.6Zm-6.3-2.17V35.35h-8c0,1.83.07,9.48-.08,11.08ZM65.53,6A5.58,5.58,0,0,1,62.34,7.6V61.47c-.06,6.75-2.22,8.11-9.11,9.07-.29-5.39-1.68-6.53-6.61-7.68V61.78c5-.23,7.81,1.89,8.66-1.09V25.27H41.69c.35,2.57-4.79,3.08-6.76,3V1.08l7.06,3H54.52L57.86,0Zm-23.84.39v7.13H55.28V6.36ZM55.28,23V15.66H41.69V23Z" />                                    </g>                                </g>                            </svg>                        </view>                    </view>                </view>            </view>        </view>

希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 iCMS, Fastadmin, ClassCMS, LeCMS, PbootCMS, PHPCMS, 易优CMS, YzmCMS, 讯睿CMS, 极致CMS, Wordpress, HkCMS, YznCMS, WellCMS, ThinkCMF, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。

相关推荐

扫码关注

qrcode

QQ交谈

回顶部