Javascript 自动上标字符,如©;在JS页面中?
我的客户有一个问题:他们的CMS不能正确处理TM或版权符号等符号。他们没有办法格式化上标符号 所以我想用JS在客户端解决这个问题 最佳做法是什么?Javascript 自动上标字符,如©;在JS页面中?,javascript,html,css,Javascript,Html,Css,我的客户有一个问题:他们的CMS不能正确处理TM或版权符号等符号。他们没有办法格式化上标符号 所以我想用JS在客户端解决这个问题 最佳做法是什么? 如何检测像©这样的特定字符并使其变小并使其顶部与作品对齐与之相关?如果CMS不处理版权符号(U+00a9),则它有很大的问题。假设这个问题无法解决,您必须以某种方式对这些字符进行“编码”。在这种解决方案下,任何从CMS中写入或读取任何内容的人都必须意识到这种编码,并在输入时进行适当的编码,在输出时进行解码。这不是一条快乐的道路 例如,假设CMS有一个
如何检测像©这样的特定字符并使其变小并使其顶部与作品对齐与之相关?如果CMS不处理版权符号(U+00a9),则它有很大的问题。假设这个问题无法解决,您必须以某种方式对这些字符进行“编码”。在这种解决方案下,任何从CMS中写入或读取任何内容的人都必须意识到这种编码,并在输入时进行适当的编码,在输出时进行解码。这不是一条快乐的道路 例如,假设CMS有一个编辑器。用户将如何在编辑器中输入“特殊”字符?是否要修改编辑器以处理必要的编码和解码 无论如何,假设您决定采用编码方式,那么选择哪种编码方式?其他人建议使用HTML实体进行编码,如
©代码>。这可能不是最好的解决方案。首先,is假设内容总是在HTML环境中输出。可能更重要的是,它无法处理没有HTML实体编码的字符。因此,使用JS字符串编码(“坏主意\u00a9”
)之类的编码可能是最好的选择。如果CMS的API使用JSON,那么一切都应该可以正常工作
您可以考虑的替代编码是URI编码或BASE64编码,但两者都不是一个好主意。
话虽如此,您似乎对字符编码和格式之间的区别感到模糊。你说
> how to detect a specific char like © and make it small and align top
如果你已经有了一个真正的版权符号,那么你不需要做任何事情,因为所有的字体都会正确地显示它。例如,如果您已将数据库中的版权符号编码为\u00a9
,并将其以JSON格式发送,则它将已经是版权符号,并且将正确显示
或者,您是否打算将版权符号存储在CMS中,作为三个字符“(c)”
,并将其视为版权符号用于格式化/显示目的?在这种情况下,是的,您需要检测这样的序列,并将它们包装在一个应用相关CSS属性的HTML中。您是否尝试过使用类似©代码>?我有点困惑,你说“上标符号”,但&复制;不是上标。你说它不能很好地处理它们,例如,它在什么方面不能很好地处理它们?它是否转义为©代码>?或者你只是想在视觉上提升这些符号?他们使用什么CMS?它有内置的文本编辑器吗?如果是这样,您可以将所述元素包装在一个带有预定义类的
标记中,该类将向上移动它:©代码>-.super{位置:相对;顶部:-0.5em;}
;这类似于您真的应该修复CMS,而不是使用客户端js。