解决网页乱码、打印文件乱码

出现乱码可能的原因:

编写网页时,使用的字符集和用户使用的字体集不一致

比如,开发者使用 utf-8 字符集写下了如下网页:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <style>
        .checked::before {
            width: 20px;
            height: 20px;
            content: "☑";
        }
    </style>
</head>
<body>
    <div class="checked"></div>
    <div class="uncheck"></div>
</body>
</html>

效果如下:
imagepng
然而,如果用户下载了该表单,且由于其他原因,需要把 html 文件的 charset 改为 GB2312 (一种常见的中文编码),那么展示就会出现乱码:
imagepng

解决方法:
将乱码的字符用编码的形式写到 html 上:

<!DOCTYPE html>
<html lang="cn">
<head>
    <meta charset="GB2312">
    <style>
        .checked::before {
            width: 20px;
            height: 20px;
            content: "\2611";
        }
    </style>
</head>
<body>
    <div class="checked"></div>
    <div class="uncheck">&#9723; </div>
</body>
</html>

注意:CSS style 中用 16 进制的编码 (\2611),HTML entities 用 10进制编码 (◻ )

另外,可通过 charCodeAt 方法,获取字符的编码

> '☑'.charCodeAt(0)
9745
posted @   潘帕斯草原上的风  阅读(618)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示