最近公司项目中涉及到制作通讯界面中未读信息的带数字的红色圆点图标。

拿我目前的博客头像图片为例(其实就是谷歌图片中粗略挑了一张顺眼的图片),效果图如下:

HTML代码如下:

<img id="picture" src="PATH_OF_PICTURE">
<div id="badge">1</div>

CSS代码如下:

#picture {
margin-top: 50px;
margin-left: 50px;
width: 50px;
height: 50px;
}
#badge {
width: 20px;
height: 20px;
line-height: 20px;  /* 数值与height相同,使数字垂直居中 */
text-align: center; /* 使数字水平居中 */
background-color: red;
color: white;
font-size: 12px;
font-weight:;
border-radius: 50%; /* 使正方形变圆形,矩形变椭圆形 */
position: relative;
bottom: 60px;
left: 90px;
}

CSS中的各种数值大小仅是例子而已,除了我标示在注释中的需要值得注意的地方外,这个例子是圆点始终为圆形且大小不变的情况,但数字一旦超过一位数,那么圆形就不能满足需求了,一般我们所见的图标会随着字符长度的变化而变化的,如下图:

HTML代码如下:

<img id="picture" src="PATH_OF_PICTURE">
<span id="badge">1000</span> <!- 把div改成span,不然宽度会占据整行-->

CSS代码如下:

#picture {
margin-top: 50px;
margin-left: 50px;
width: 50px;
height: 50px;
}
#badge {
padding: 2px 5px; /* 不需要定义height与width,添加合适的padding使圆圈随字符长短变化而改变 */
line-height: 20px;
text-align: center;
background-color: red;
color: white;
font-size: 12px;
font-weight:;
border-radius: 50%;
position: relative;
bottom: 45px;
left: -20px;
}

但是这样的代码存在一个问题,当把数字再变回成个位数时,红点的位置就过于偏左了。

所以一般会给数字设置一个上限,如果超过那个数字,就在那个数字后边加上➕表示。效果如下:

HTML/CSS: 如何制作未读信息图标的更多相关文章

  1. python类似微信未读信息图片脚本

    其实就是实现一个效果,给一张图片,然后再右上角给出未读的信息数目,就像我们打开微信的时候,总是看到红点就忍不住想要点击去查看一样. 类似这种效果: 可以知道,图片是给定的,那么只要随机生成一个数字,然 ...

  2. Android系统 小米/三星/索尼 应用启动图标未读消息数(BadgeNumber)动态提醒

    http://www.51itong.net/android-badgenumber-9789.html Android系统 小米/三星/索尼 应用启动图标未读消息数(BadgeNumber)动态提醒 ...

  3. Android 类似未读短信图标显示数字效果的分析

    之前一直以为是应用本身在对图标进行修改,看了源码之后发现其实主要的工作并不是应用自己完成的,主要的工作在是launcher里面完成的. 关于系统里面类似未读短信的具体处理流程如下, 原理 一个应用要实 ...

  4. Android中为图标加上数字--用于未读短信数提醒,待更新应用数提醒等

    本文属于原创,转载请著名出处:http://flysnow.iteye.com/blog/906770 写道 在我们开发一些如短消息.应用商店等应用时,会考虑在短消息的图标上加上未读短信的数量,在应用 ...

  5. 桌面图标未读消息(小米,sony,三星手机)

    新消息来了,在桌面的Laucher图标上显示新消息数 /** * 应用桌面图标未读消息显示工具类 * 只支持 小米,三星和索尼 */ public class BadgeUtil { final st ...

  6. 【Python学习笔记】-APP图标显示未读消息数目

    以小米手机系统为例,当安装的某个APP有未读消息时,就会在该APP图标的右上角显示未读消息的数目.本文主要解说怎样用Python语言实现图标显示未读消息的数目.首先,还是要用到Python中PIL库, ...

  7. CSS学习笔记----CSS3自定义字体图标

    响应式网页字体图标 作者:大漠 日期:2014-01-28 点击:3220 @font-face Responsive 本文由大漠根据Jason的<Responsive Webfont Icon ...

  8. 使用CSS3制作72个webapp图标

    前言 移动网络带宽的快慢直接影响webapp应用体验效果的优差,其中加载图片是很耗流量的,所以对这一方面的性能优化是很需要的.一般对于那些小而多的图片(图标)都会采用sprite合并成一张图片来减少h ...

  9. 利用腾讯企业邮箱开放API获取账户未读邮件数初探

    公司一直使用腾讯提供的免费企业邮箱服务,今天用管理员帐户登录后发现,原来现在腾讯的企业邮箱也开放了部分API 你可以通过开放接口实现以下功能: 数据同步 数据同步可以帮助你同步部门成员信息,你还可以创 ...

随机推荐

  1. Golang 学习权威网站

    Golang 是一个开源的编程语言,它能让构造简单.可靠且高效的软件变得容易. Golang 是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发 ...

  2. Asp.Net Core 全局模型验证

    public class ActionFilter : IActionFilter { /// <summary> /// action 执行之前 /// </summary> ...

  3. ValueOf()和toString()

    var colors = ["red", "blue", "green"]; // 创建一个包含3 个字符串的数组 console.log( ...

  4. vue 应用生产环境的 webpack 打包配置优化

    转:https://blog.csdn.net/robin_star_/article/details/83856363 前言:很好的打包优化的帖子,还没来的急去实测验证 1. 去掉 console ...

  5. Android--图片轮播(banner)

    使用步骤 Step 1.依赖banner Gradle dependencies{ compile 'com.youth.banner:banner:1.4.10' //最新版本 } 或者引用本地li ...

  6. 011_如何decode url及图片转为base64文本编码总结

    一.咱们经常会遇到浏览器给encode后的url,如何转换成咱们都能识别的url呢?很简单,talk is easy,Please show me your code,如下所示: (1)英文decod ...

  7. CF1012B Chemical table

    $CF1012B Chemical table 给你一个 \(n\times m\) 的矩形,一开始有 \(q\) 个格子上被标记.对于任意两行两列,如果交汇的四个格子中有三个被标记,那么第 \(4\ ...

  8. python之log

    #!/usr/bin/python # -*- coding: UTF- -*- ''' ''' import logging # 设置输出文件.文件格式和日志级别 logging.basicConf ...

  9. TPYBoard开发板搭建,实现隐秘通信

    一.准备工作 lTPYBoard v102(简称v102) 1块 lTPYBoard v202(简称v202) 1块 l杜邦线.MicroUSB数据线 若干 (成本100元以内,某宝上可以买到) 附上 ...

  10. SpringCloud(5)路由网关Spring Cloud Zuul

    一个简单的微服务系统如下图: 1.为什么需要Zuul Zuul很容易实现 负载均衡.智能路由 和 熔断器,可以做身份认证和权限认证,可以实现监控,在高流量状态下,对服务进行降级. 2.路由网关 继续前 ...