首页 > 其他分享 >纯CSS实现未读消息显示99+

纯CSS实现未读消息显示99+

时间:2024-04-03 10:32:47浏览次数:16  
标签:75rem 未读 -- 99 num var col CSS

在大佬那看到这个小技巧,我觉得这个功能点还挺常用,所以给大家分享下具体的实现。当未读消息数小于100的时候显示准确数值,大于99的时候显示99+。

1. 实现效果

2. 组件封装
<template>
  <span class="col">
    <sup :style="{'--num':num}">{{num}}</sup>
  </span>
</template>

<script>
export default {
  name: 'unread',
  props:{
    num:{
      type: Number,
      default: 0
    }
  }
}
</script>
<style>
.col {
  display: inline-flex;
  width: 4rem; height: 4rem;
  align-items: center;
  justify-content: center;
}

.col sup {
  position: absolute;
  box-sizing: border-box;
  min-width: 1rem;
  padding: 0 0.1875rem;
  color: #fff;
  font-size: min(.75rem, calc(10000px - var(--num) * 100px));
  line-height: 1.2;
  text-align: center;
  background-color: #eb4646;
  border: 1px solid #fff;
  border-radius: 1rem;
  transform: translate(calc(40% + .375rem), -.75rem);
  /* 数值为0的时候隐藏 */
  opacity: var(--num);
}
.col sup::before {
  content: '99+';
  font-size: min(.75rem, calc(var(--num) * 100px - 9900px));
}
</style>
3. 使用
      <Unread :num="0"/> // 为0隐藏
      <Unread :num="9"/>
      <Unread :num="99"/>
      <Unread :num="999"/>

标签:75rem,未读,--,99,num,var,col,CSS
From: https://blog.csdn.net/weixin_42079403/article/details/137274283

相关文章

  • [HTML、CSS]知识点
    【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权)https://www.cnblogs.com/cnb-yuchen/p/18032061出自【进步*于辰的博客】注:本文中“子级”指子级盒子或子级标签;“逻辑位置”指根据理论推断的所在位置,“实际位置”指实际显示的所在位置。目录1、其他知识点链接......
  • 界面组件DevExpress WinForms v23.2 - 进一步增强HTML & CSS支持
    DevExpressWinForms拥有180+组件和UI库,能为WindowsForms平台创建具有影响力的业务解决方案。DevExpressWinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!DevExpressWinForms控件日前正式发布了v23.2,此......
  • 洛谷 P1008 [NOIP1998 普及组] 三连击
    这道题我们可以用桶排序来做,代码如下:#include<bits/stdc++.h>//万能头 usingnamespacestd;//好习惯 inta[10];//一个桶数组,来确定是否有重复的 intmain(){   ints1,s2,s3;//定三个函数,用于判断    intsum=0;//用于判断数字是否重复    for(int......
  • Java登陆第三十六天——VUE3引入CSS
    在一个.Vue文件中,通常包括以下三部分。<template><style><script>.vue中部分传统部分描述<template>HTML代替传统的.html文件<style>CSS代替传统的.js文件<script>JS代替传统的.css文件声明内部的CSS在.Vue文件中,style标签声明CSS。Hello......
  • 在css3中如何添加圆角边框、盒子阴影以及文字阴影
    注:在css3中如何添加圆角边框、盒子阴影以及文字阴影一、圆角边框在CSS3中,新增了圆角边框样式这样我们的盒子就可以变圆角了。border-radius属性用于设置元素的外边框圆角。语法:border-radius:length;参数值可以为数值或百分比的形式如果是正方形,想要设置为一个圆,......
  • 初识CSS
    目录前言:    CSS的介绍:    CSS的发展:    1)CSS1.0:    2)CSS2.0:    3)CSS2.1:    4)CSS3:CSS特点:    1)丰富的样式定义:    2)易于设置和修改:    3)可以多页面应用:    4)层叠:5)页面压缩:......
  • CSS 定位
    相对定位相对定位相对的是自己原来的位置,开启相对定位的元素并没有脱离文档流,可以超出父容器的大小,与float区分有四个属性值:left、bottom、right、top左和右不能同时用,同时用时左生效;当一个元素右定位属性,这个元素的层级高于普通的元素;当两个元素都开启定位时,采用后来居上......
  • 54.html+css+js网页设计实例/“企业”酒庄主题介绍/web前端期末大作业/
    一、前言  本实例以“企业”酒庄为主题设计,应用html+css+js、图片轮翻效果、留言板、搜索等,供大家参考。【关注作者|获取更多源码(2000+个Web案例源码)|优质文章】;您的支持是我创作的动力!【点赞收藏博文】,Web开发、课程设计、毕业设计有兴趣的联系我交流分享,3Q!二、网页文......
  • 跨境独立站pandabuy cssbuy 跨境Micro微店商品详情
    跨境独立站运用微店详情API接口:实现高效运营与营销新突破在全球化日益加速的今天,跨境独立站成为越来越多商家拓展海外市场、提升品牌影响力的关键平台。为了更好地满足用户需求,提升用户体验,跨境独立站需要不断引入先进的技术手段,其中,微店详情API接口的应用,为商家带来了全新的运营......
  • css transform 平移、旋转、缩放、倾斜元素
    CSStransform属性用于对元素应用2D或3D转换。它允许您平移、旋转、缩放、倾斜元素。语法:transform:<transform-function>[<transform-function>]...;最常用的转换函数:translateX(x):水平平移元素x个单位。translateY(y):垂直平移元素y个单位。translate(x,y......