base64编码用在HTML(支持IE6、IE7、IE8)

  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" onchange="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]
时间: 2024-08-07 14:38:30

base64编码用在HTML(支持IE6、IE7、IE8)的相关文章

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

让IE(ie6/ie7/ie8)支持HTML5元素,我们需要在HTML头部添加以下JavaScript,这是一个简单的document.createElement声明,利用条件注释针对IE来调用这个js文件.Opera,FireFox等其他非IE浏览器就会忽视这段代码,也不会存在http请求. 方式一:引用google的html5.js文件,代码内容可以自己下载下来看. <!–[if lt IE9]> <script src="http://html5shiv.googleco

让IE6/IE7/IE8浏览器支持CSS3属性

让IE6/IE7/IE8浏览器支持CSS3属性 一.下载 您可以狠狠地点击这里:ie-css3.htc,这个玩意儿是让IE浏览器支持CSS3表现的关键东东. 二.上面的是什么东西 首先说说.htc文件,.htc文件是个脚本文件,我个人以为与js文件属于同一货色,只是呢,貌似htc是Internet Explorer(IE)的私生子,只有IE才认它.htc文件可以用来描述web行为,web行为允许程序员把自定义的功能“连接”到现有的元素和控件,而不是必须让用户下载二进制文件(例如ActiveX 控

让IE6/IE7/IE8支持HTML5标签的js代码方法

让IE(ie6/ie7/ie8)支持HTML5元素,我们需要在HTML头部添加以下JavaScript,这是一个简单的document.createElement声明,利用条件注释针对IE来调用这个js文件.Opera,FireFox等其他非IE浏览器就会忽视这段代码,也不会存在http请求. 方式一:引用google的html5.js文件,代码内容可以自己下载下来看. <!–[if lt IE9]> <script src="http://html5shiv.googleco

让IE6/IE7/IE8支持CSS3属性的8种方法介绍

我们都知道,IE浏览器暂不支持CSS3的一些属性.国外的工程师们,不安于此现状,他们总是尽量使用一些手段使IE浏览器也能支持CSS3属性,我觉得这些都是很有意义,很有价值的工作,可以推动整个技术领域的进步的.到目前为止,有不少可以让IE支持部分CSS3属性的工具.例如: 1. Dean Edwards的IE7.js (以及 IE8.js, IE9.js) 这个玩意估计是试图让IE支持CSS3属性的鼻祖,还算蛮强大,就是性能开销较大,要解析很多文件脚本,给DOM添加大量的元素以及ClassName

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

标准参考 JSON 是一种数据交换格式,RFC 4627 对 JSON 进行了详细描述. 根据 ECMA-262(ECMAScript)第 5 版中描述,JSON 是一个包含了函数 parse 和 stringify 的简单对象. parse 函数用来解析一个 JSON 文本(一个 JSON 格式的字符串)到一个 ECMAScript 值(例如 JSON 对象被解析为 ECMAScript 对象, JSON 数组被解析为 ECMAScript 数组,其它类型以此类推):stringify 则相反

让IE6 IE7 IE8 IE9 IE10 IE11支持Bootstrap的解决方法转

让IE6 IE7 IE8 IE9 IE10 IE11支持Bootstrap的解决方法 最近做一个Web网站,之前一直觉得bootstrap非常好,这次使用了bootstrap3,在chrome,firefox,safari,opera,360浏览器(极速模式).搜狗浏览器等浏览器下均没有问题,而在IE8及IE11下发现样式无法显示,然后各种百度啊,最后在 雅朋网 的一个网友帖子的帮助下解决了问题,也参考了 千寻学习网 的资料,先将解决方法总结如下: 首先需要确保你的HTML页面开始部分要有DOC

转载------让IE6 IE7 IE8 IE9 IE10 IE11支持Bootstrap的解决方法

本文是转载及收藏 让IE6 IE7 IE8 IE9 IE10 IE11支持Bootstrap的解决方法 最近做一个Web网站,之前一直觉得bootstrap非常好,这次使用了bootstrap3,在chrome,firefox,safari,opera,360浏览器(极速模式).搜狗浏览器等浏览器下均没有问题,而在IE8及IE11下发现样式无法显示,然后各种百度啊,最后在 雅朋网 的一个网友帖子的帮助下解决了问题,也参考了 千寻学习网 的资料,先将解决方法总结如下: 首先需要确保你的HTML页面

IE(IE6/IE7/IE8)支持HTML5标签

让IE(ie6/ie7/ie8)支持HTML5元素,我们需要在HTML头部添加以下JavaScript,这是一个简单的document.createElement声明,利用条件注释针对IE来调用这个js文件.Opera,FireFox等其他非IE浏览器就会忽视这段代码,也不会存在http请求. <!–[if lt IE9]> <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"><

meta 标签代码解决IE兼容问题,IE6,IE7,IE8,IE9,IE10(包括360的兼容模式)

最近做了一个项目,客户反映,在360下布局错位,远程调试了一下,发现客户使用的是360的兼容模式,然而我在自己的电脑上测试的时候是正常的(兼容模式也正常):简单研究了一下360的兼容模式,在360的兼容模式下按F12得到下图的调试信息: 经过测试,发现是红框处的设置的ie版本太低导致的,主要是文档模式更改文档模式为相对较高的版本即可解决, 这里,我添加了如下代码 <meta http-equiv="X-UA-Compatible" content="IE=edge,ch

一行代码解决各种IE兼容问题,IE6,IE7,IE8,IE9,IE10 http://www.jb51.net/css/383986.html

在网站开发中不免因为各种兼容问题苦恼,针对兼容问题,其实IE给出了解决方案Google也给出了解决方案百度也应用了这种方案去解决IE的兼容问题 百度源代码如下 复制代码 代码如下: <!Doctype html> <html xmlns=http://www.w3.org/1999/xhtml xmlns:bd=http://www.baidu.com/2010/xbdml>; <head> <meta http-equiv=Content-Type conten