1. 在HTML使用base64编码, 叫做Data URI scheme.
  2. Data URI scheme目前支持的类型有:(2016-10-19)
    data:,文本字串
    data:text/plain,%s
    data:text/html,%s
    data:text/html;base64,%s
    data:text/css,%s
    data:text/css;base64,%s
    data:text/javascript,%s
    data:text/javascript;base64,%s
    data:image/gif;base64,%s
    data:image/png;base64,%s
    data:image/jpeg;base64,%s
    data:image/x-icon;base64,%s

  3. 1)在 linux 下直接可以使用 base64 命令行工具产生 base64 编码:
    > base64 "/user/prj/64 tester/test.png"
    2)在 PHP 中可以用函数 base64_encode() 进行编码:
    <?php
        $s = '123';
        echo base64_encode($s);
        // 附:反编译 : base64_decode($s);
    ?>
    3)在 HTML5 下的浏览器运用 FileReader 进行编码:
    <input type="file" οnchange="readfile4base64uri(this)" />
    <script type="text/javascript">
    function readfile4base64uri(el) {
        var f = el.files[0];
        var reader = new FileReader();
        reader.readAsDataURL(f);
        reader.onload = function(e) {
            var s = this.result;
            alert(s);
            // var _tmp = '<img src="' + s + '" class="ya-Ma-dieee" />';
            // $('preview-panel').innerHTML = _tmp;
        };
    }
    </script>
    4) 用 csharp 的话, 可以这样:
    static public string base64(string s, bool b)
    {
        /***
        * bool b, When [true] 加密, otherWise [false] 解密
        * author: xhx jx744418777
        * OnDate: 20161019 [C# vs2010 WinXp sp3]
        ***/
        try
        {
            if (b) {
                    return System.Convert.ToBase64String(System.Text.Encoding.Default.GetBytes(s));
            } else {
                    return System.Text.Encoding.Default.GetString(System.Convert.FromBase64String(s));
            }
        } catch(Exception exp)
        {
            return exp.Message;
         }
        return null;
    }
    5)C\C++, 参考 CSDN 上的:
            http://blog.csdn.net/tiandyoin/article/details/30723475
            《[转] Base64加密解密算法的C/C++代码实现》

  4. base64 浏览器支持程度:
      Opera 7.2+ data URI 必须小于4100字符
      IE8+ data URI必须小于32k(IE8不支持js的data URI)(用js的话要根据具体浏览器和系统编写,

    我在WinXp IE6下写时有些bug, 若只是使用 javascript 地址加入: file:// 前缀才行)

      ChromeFFSafari无限制

  5. 1)
    http://blog.csdn.net/hansel/article/details/32223269
    《[原] Chrome保存网页为mhtml格式》
    I. 打开chrome,在地址栏输入chrome://flags,
    II. 找到“Save Page as MHTML”,点击[enable],重启chrome,搞定。
    III.打开这个选项后,保存网页只能保存为mhtml格式。

    2)在 IE6 、 IE7 下参考:
    Content-Type: multipart/related;
    type="text/html";
    boundary="----=_Part_A47D6C30"
    X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5994

    ------=_Part_A47D6C30
    Content-Type: text/html; charset="utf-8"
    Content-Transfer-Encoding: quoted-printable
    Content-Location: =?utf-8?Q?index.html?=

    =EF=BB=BF<!DOCTYPE HTML>
    <html lang=3D"en-US">
    <head>
    <meta charset=3D"UTF-8">
    <title>Document</title>
    <style type=3D"text/css">
    .uptip {
    width: 150px;
    background: #cdf url(test.png) no-repeat right center;
    }
    </style>

    <script type=3D"text/javascript">
    alert(888);
    window.onerror =3D function(line){
    alert(line);
    };
    </script>
    <script type=3D"text/javascript" src=3D"test.js"></script>
    </head>
    <body>
    <p>1. TEXT tag:&nbsp;&nbsp;<span>2131231</span></p>
    <p>2. IMG tag:&nbsp;&nbsp;<IMG alt=3D"img tag" src=3D"test.png"></p>
    <p class="3D""uptip">3. Css background:&nbsp;&nbsp;<span ></span></p>
    <p>3. test javascript:&nbsp;&nbsp;<span id="testjs"></span></p>
    </body>
    </html>

    ------=_Part_A47D6C30
    Content-Type: image/png
    Content-Transfer-Encoding: base64
    Content-Location: =?utf-8?Q?test.png?=

    iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ
    bWFnZVJlYWR5ccllPAAAAdFJREFUeNqkk71LHEEYxt/Zr1u4O46gIlhITJMmReCwOFGjhQTSaEgj
    CGmyhYWlTYIg9lYhEA3nf6CohYJooSRaiKISFY1fUUEil+hy7t3t7XzlHTGghe4dGXjmhd35PTvv
    MztESgn/Mww1nX3r78DyDvWiRG4BNVLTODBBThf6Og07kX70pMmOxKt0CNsRIVC8ynD3aMmnhQvH
    YIw5lXUp27K4Lgr7AFKEGGhgWVE98bje/vV9yjE450nLRLh4DiCKuCIsEwJSi4BlVuuKNRilumAe
    SJovAb4ZnGMnHijWoIyB4BQkZ2WlT5BRrEGpgjmalGegIaNYZcA5QxNWnoHUqDLgBg2C1VzWbbFN
    ppecAQYZeFmB7JaGLunDrTU/5/lcMGxFZfKgOBTygTjcXveRHSHqV54detOFtg4qed83kw2pGCGS
    /M649OePnXV8lG7rHvtCwu7C9Kf256Zlf61vao1J5sPmxmb+ys00v+qZXL0OM6xbPGun7llLRB3S
    3u6ef5k5G/4HX6fx0A7GB1++rX2aGo7Go/rxznKQ97IfX/fOfLgT520DQoiNJYaKVyQilZ/fN88L
    CebByeXc4sb56PTS6Qq++4Nykcsp5q8AAwDKgQwKmGYUpAAAAABJRU5ErkJggg==

    ------=_Part_A47D6C30--

  6. 【参考】
    1、 http://www.jb51.net/article/50789.htm <神盾加密解密教程(三)PHP 神盾解密工具>
    2、 http://music.163.com/#/playlist?id=387178008&userid=5776820 <网易音乐 3D你的耳朵>
    3、 https://github.com/mangui/flashls/releases/ <hls(m3u8) flash v0.4.4.21>
    4、 http://blog.csdn.net/hansel/article/details/32223269 <Chrome保存网页为mhtml格式>

  7. The End.

    写zuo历时: <13:15:00 ~ 15:31:00> ON [20161019] Ver [v0.01]

转载于:https://www.cnblogs.com/jx744418777/p/5977510.html

base64编码用在HTML(支持IE6、IE7、IE8)相关推荐

  1. 让eWebEditor编辑器支持IE6.IE7.IE8傲游的办法

    以下方法基本汇集全各种处理办法了,部分办法在有些机器上不可用,请选择有效的办法使用即可.方法一能够兼容ie6.7.8. 方法一: 今天把ie升级到8.0竟然出现点击ewebeditor在线编辑器按钮无 ...

  2. calc ie支持_让IE6/IE7/IE8支持CSS3属性的8种方法介绍

    让IE6/IE7/IE8支持CSS3属性的8种方法介绍 发布时间:2013-09-23 10:43:06   作者:佚名   我要评论 IE浏览器暂不支持CSS3的一些属性.国外的工程师们,不安于此现 ...

  3. IE6 IE7 IE8(Q) 不支持 JSON 对象

    标准参考 JSON 是一种数据交换格式,RFC 4627 对 JSON 进行了详细描述. 根据 ECMA-262(ECMAScript)第 5 版中描述,JSON 是一个包含了函数 parse 和 s ...

  4. IE(IE6/IE7/IE8)支持HTML5标签--20150216

    让IE(ie6/ie7/ie8)支持HTML5元素,我们需要在HTML头部添加以下JavaScript,这是一个简单的document.createElement声明,利用条件注释针对IE来调用这个j ...

  5. html不支持ie7,解决IE6/IE7/IE8不支持before,after问题

    对从事web开发的朋友来讲,低版本的永远是一个痛点,不支持最新技术(如css3,html5). 在现在web开发中使用图标字体已经很广泛,如Font Awesome,Bootstrap等,字体图片主要 ...

  6. jquery datatables-1.8.2服务器端分页不支持IE6,IE7 UBG修改。

    jquery datatable服务器端分页不支持IE6,IE7: 原因是在IE6,IE7,jquery datatable通过ajax 无法发送get类型请求: 但可以发送post请求,只要将插件中 ...

  7. 三联动 支持ie6,ie7 省,市,区

    三联动 支持ie6,ie7 省,市,区 <html xmlns="http://www.w3.org/1999/xhtml"> <head><titl ...

  8. 如何让IE6/IE7/IE8支持HTML5标签

    让IE(ie6/ie7/ie8)支持HTML5元素,我们需要在HTML头部添加以下JavaScript,这是一个简单的document.createElement声明,利用条件注释针对IE来调用这个j ...

  9. 伪元素(3)-解决IE6/IE7/IE8不支持before,after问题

    第一种解决方式参考: http://www.wozhuye.com/index.php?m=content&c=index&a=show&catid=3&id=316 ...

  10. bootstrap支持ie8 让IE6 IE7 IE8 IE9 IE10 IE11支持Bootstrap的解决方法

    做一个在线系统,PC端也要做,但要兼容千恶的IE8[IE6 是万恶,打死我都不会管IE6],IE8 是我底线了md, 在IE8下 bottstrap 错乱,变形,不支持一些属性的问题,下面看了一篇 某 ...

最新文章

  1. java进制转化_【Java学习笔记之四】java进制转化
  2. 【译】①JWS之Java[tm] Web Start开发者指南目录
  3. python3 beautifulsoup 表格_[Python3爬虫]Beautiful Soup解析库
  4. mac部署文件服务器,MAC 搭建本地服务器
  5. Eclipse里做JBPM工作流gpd.xml中文乱码问题解决(包括控制台乱码解决)
  6. [转载] JAVA数组实现学生成绩统计
  7. 不规则多边形填充_花一分钟看一个案例,PPT中图片填充形状的应用
  8. 赵明晒荣耀20青春版三色真机图:哪款会是你的菜?
  9. Python实现一键打开/关闭防火墙
  10. 朋友圈最忌讳发什么?
  11. 基于itchat实现微信群消息同步机器人
  12. 宝藏女孩程序媛,谈谈职场成长这些事
  13. 解决VirtualBox无法安装增强工具
  14. [手机Linux]一,线刷小米6到开发版,获取root权限
  15. Black Hat USA 2011: Alexander Polyakov - CTO - ERPScan
  16. 如何在linux系统下的抓包文件保存在u盘里,在xp系统中打开,【Linux】Wireshark在Linux系统下的安装及使用...
  17. 前端扁平化数据转树形数据_javascript将扁平的数据转为树形结构的几种方法
  18. 记毕业季——回忆四年大学,青春无悔【正能量】
  19. 堆溢出(二)空表DWORD SHOOT
  20. NYOJ118 修路方案

热门文章

  1. BSL211SP INFINEON 英飞凌
  2. 基于STM32+ESP8266的奥运会奖牌榜设计之经典
  3. java 企业付款_java微信公众号企业付款开发
  4. 细谈负载均衡,什么是负载均衡以及负载均衡的常见方法
  5. 基于 ARM的 Windows 10S 笔记本 转帖
  6. vmware 运行虚拟机显示 内部错误
  7. oracle:todate,oracle日期格式,oracle todate
  8. c语言超市账务管理源代码,[源码和文档分享]基于C语言实现的超市管理系统
  9. http、request和登录案例讲解
  10. 啥高科技?谷爱凌的金牌不怕“咬”!索尼发布开放式真无线耳机LinkBuds | 美通社头条...