javascript - 如何防止电子邮件地址的 css 自动断字

标签 javascript html css hyphenation

我对网站上的文本段落使用 CSS 连字符 (hyphens:auto;)。有时会发生电子邮件地址连字符导致“错误”域名的情况。示例:

john.doe@planungsteam.abc

成为

john.doe@planungs-
team.abc

我该如何防止这种行为?由于这是用户生成的内容,因此无法手动添加 html 元素。我正在考虑使用 JavaScript 解析文本,向电子邮件地址添加特殊标签并在这些标签上使用 hyphens:none;。但我担心性能。

(我认为这是一个问题,尤其是德语文本,其中有很多复合名词)

最佳答案

在 CSS 中没有办法引用文本的某些部分而不使它们成为元素(除非它们可以被称为伪元素,如 :first-letter,但只有少数当前在 CSS 中的伪元素,它们在这里没有帮助)。

因此您需要以编程方式处理内容,无论是服务器端还是客户端。识别电子邮件地址并非易事,您也可以考虑处理其他一些结构(例如 URL)。出于性能原因,您可以在客户端 JavaScript 中执行此操作,以便处理仅在文档加载后才开始。或者,如果数据以 HTML 格式保存在服务器上,您可以在保存数据之前执行处理(尽管这会增加要发送到浏览器的数据量)。

关于javascript - 如何防止电子邮件地址的 css 自动断字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20540931/

相关文章:

javascript - 如何迭代 FileSystemDirectoryHandle 的内容?

javascript - 按钮标签在 IE 7 中不起作用

javascript - 未捕获的语法错误 : Unexpected token )

Javascript 下载在 Firefox 和 IE 中不起作用

javascript - 如何打破输入字段值的行

javascript - jQuery 在 JSFiddle 中有效但在本地 RoR 环境中无效?

Javascript : Exclude an element from a random set - (curiosity)

jquery - 无法使用 jQuery 在 <td> 中获取文本

Ruby 1.9 中的 HTML 整理/清理

css - HTML5 : Can you render a 20x1 table as a 10x2 table using only CSS?