【问题标题】:Hide a tag if mailto or tel doesn't exist如果 mailto 或 tel 不存在,则隐藏标签
【发布时间】:2016-02-09 11:05:32
【问题描述】:

我有一个数据库驱动的员工档案系统,他们可以输入他们的详细信息,它会生成一个 HTML 页面。 他们可以输入电子邮件地址和电话号码,输出 HTML 如下所示:

<a href="mailto:[Email]" class="teamEmail">Email</a><br />
<a href="tel:[Phone]" class="teamPhone">[Phone]</a>

我有一些 CSS 会在这里隐藏一个空的 HREF:

a.social[href='']{ display:none; }

但是我想要实现的是如果mailto: 或tel: 后面没有内容的话就隐藏a 标签,上面的CSS 不会隐藏a 标签,因为mailto 和tel 都显示在href 内。

我认为这必须用 jQuery 来处理,我可以接受,因为一个函数可能会隐藏 mailto 和 tel。

谢谢

【问题讨论】:

  • 就不能在服务器端不输出a标签吗?
  • 不幸的是,数据库是在 CMS 内部处理的,我没有控制服务器端,它需要隐藏在前端。
  • 由 CMS 处理的数据库本身并不是一个很好的理由。什么样的 CMS 不支持模板化?
  • 与我的问题无关

标签: jquery css


【解决方案1】:

您可以尝试以下方法:

a.social[href='mailto:'],
a.social[href='tel:'] { 
     display:none; 
}

它只针对带有“mailto:”或“tel:”的链接。如果有超过这些特定字符串,则不会定位该元素。

【讨论】:

    猜你喜欢
    • 2020-11-06
    • 1970-01-01
    • 2011-09-11
    • 2020-08-03
    • 2021-12-08
    • 1970-01-01
    • 1970-01-01
    • 2020-11-06
    • 2013-09-24
    相关资源
    最近更新 更多