网页上的小红点如何实现的?

类似论坛类的网站中,个人消息提醒的小红点(带数字)是如何实现的?
我是一个写前端部分的,需要后台怎样传数据?一般的实现方法是怎样的啊?

阅读 21.7k
5 个回答

长连接轮询或者websocket

小红点的实现用到了CSS中的定位。其实是很有意思的。
首先我们需要有一个 圆点,使用border-radius属性即可,
定义我们的小圆点

<span>
  消息
</span>
<span class="redpoint">
  2
</span>
  height:16px;
  width:16px;
  border-radius:16px;

数字的位置需要进行一些微调才能看出来效果

  display:inline-block;
  text-align:center;
  font-size:0.1em;
  color:#fff;
  background:red;

然后使用相对定位调整位置

  position: relative;
  top: -8px;
  right: 8px;

这样就差不多了~
大概就是这样的一个效果 Pen

后端的话,一般直接调用接口返回得到那个数字就行了,这个具体看后端的设置

题主是问如何实时得到通知吧?

几个关键词: websocket,长轮询

一般小红点是先定义好的,隐藏起来,有消息再显示

实现简单啦,后台分配数据时判断,如果有信息就显示这个小点,没有就不显示。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题