【问题标题】:Show text on image background [closed]在图像背景上显示文本[关闭]
【发布时间】:2013-10-08 21:43:05
【问题描述】:

我正在尝试为我的项目做一些新的事情。我有一个图标,可以说有点像邮件图标。

当页面被加载时,图标也会被渲染。根据我在页面加载期间在后台执行的查询计数,我想在图标内/上显示该数字(计数)。有点像我看到 Facebook 通知显示在图标顶部或 Gmail 显示图标上有 2 封新电子邮件等。

最初,我想为每个数字设置一个不同的图标,因为我对计数的最大限制是有限的。但我正在考虑其他更适合以编程方式执行的选项。

【问题讨论】:

  • 是的。我问是否有人以前这样做过,他们是如何处理这种情况的。我说我可以为每个数字使用不同的图标来做到这一点,但是如果要显示大数字,我们应该有其他方法可以做到这一点,而不是创建 100 个图标。
  • 您是在谈论网站图标还是页面上某处的实际图标?数字可以呈现为文本还是必须是图形的一部分?
  • 我觉得这个问题应该发到meta.stackoverflow.com
  • 它是页面上的实际图标。我猜这个数字可以呈现为文本.. 我所需要的只是有一个 UI 效果显示图标和数字(在它上面或里面),而不必为每个数字(1、2、3、4)设置单独的图标...等)
  • @gnclmorais 太棒了!谢谢你的链接..

标签: html css user-interface


【解决方案1】:

尽管得到了回答和接受,但我只是想分享一下我以前在我的一个项目中如何做到这一点。放在这里作为代码参考。

HTML:

<a href="#" class="icon" >
    <span class="jewel">2</span>
</a>

CSS:

.icon {
    position: relative;
    display: inline-block;
    height: 24px;
    padding: 0px 4px 0px 20px;
    background: ....;
}

.jewel {
    position: absolute; 
    display: block; 
    top: -8px; right: -8px; 
    height: 16px; width: 16px; 
    text-align: center; 
    color: White; 
    background-color: Red; 
    overflow: hidden; 
}

工作小提琴:http://jsfiddle.net/gE3hz/

【讨论】:

  • 非常感谢您提供解决方案。
  • 我认为这正是我正在寻找的......再次感谢。
  • 很高兴能帮上忙 :)
【解决方案2】:

我建议将图标图像设置为 div 左右的背景,然后您可以将数字作为纯文本放在其顶部,并使用填充移动它。

【讨论】:

  • 不知道为什么这被否决了——这是显而易见的答案。你需要一个 spandiv 和一个 background-image 来存储整数变量。
  • @ced-b .. 这是个好主意。这就是我正在寻找的......只是关于如何解决显示问题的一般想法......有些人比专注于帮助更乐于投反对票。 :-)
  • @ZVenue 是的 - 我很高兴能帮上忙。
  • @ZVenue 没有人反对您的问题。但以目前的形式,它不适合 Stack Overflow - 所以人们投票关闭它。
  • @jadarnel27 您正在进入技术领域。.. 否决不是我的意思.. 但您明白了。为什么要关闭它?为什么不专注于帮助......就像其他人所做的那样......如果你不能提供帮助,那么至少不要阻碍思想和知识的传播是我的观点。显然,有些人认为这值得回应......用实际的想法和答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-03-22
相关资源
最近更新 更多