解决Golang在Web开发时前端莫名出现的空白换行

问题:

在使用Golang做Web开发时,有时候渲染出来的模板在前台显示时会出现一些奇怪的空白换行,具体特征就是查看css样式表并没有相关定义的空白部分。

分析:

查看出现问题页面的网页源代码,复制空白换行部分转码为Unicode编码,发现其中包含了\u2028这样的字符【图一】。


 【图一】

另外,直接在浏览器检查里边的html选择Edit as html,也可发现在空白处存在小红点,鼠标移上会直接显示该字符是\u2028【图二】。查阅资料发现,这样的换行符在JavaScript中并不支持。


【图二】

解决方法:

在网页检查可以发现,直接删除这些小红点便可解决问题。网上有直接前端处理的方式,即搜索页面中的\u2028并将其替换为\\u2028即可,当然也可以在后台使用Golang进行处理,即在输出html前对内容进行检索,并替换即可。

strings.Replace(html,"\u2028","",-1)

好了,以上就是这篇文章的全部内容,希望对大家的学习和工作能带来帮助。如果有疑问可以留言交流。