<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-57  評論-129  文章-0  trackbacks-0
    最近在搞JSI 的重構,少來冒泡了。
    發一個中午的剛用到的小技巧:

    在關機效果實現上,現在一般根據瀏覽器特征分別使用 慮鏡/樣式/圖片 去模擬。

    其中Opera是不支持網頁透明的,只能用png的alpha透明模擬。
    所以,我們需要一張特別的小圖片。一個象素,alpha透明。

    但是這個單象素圖片的出現,感覺有點怪怪的,而且當網速很慢的時候,裝載這個小圖片還會延遲,效果不好。

    不過,Opera的另外一個特性,可以避免這個問題:data:協議的支持。

    對于這種小圖片,完全可以編碼到樣式里面

    background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mM4ffp0AwAHqALiYeNxSgAAAABJRU5ErkJggg==)


    好了,如此一來,關機效果的實現,就沒有圖片這個累贅了。


    圖片的生成:

    圖片的生成,浪費我一個中午的時間:(
    開始本想找個軟件做掉,最后沒發現一個如意的,干脆,自己看看api,自己寫了一下:
    代碼如下:
        public static void main(String[] args) throws IOException {
            BufferedImage image 
    = new BufferedImage(11,
                    BufferedImage.TYPE_INT_ARGB);
            Graphics2D g2d 
    = image.createGraphics();
            
    // RGBA #cccccc80
            g2d.setColor(new Color(0xcc0xcc0xcc0x80));
            g2d.fillRect(
    0011);
            g2d.dispose();
            IIOImage iioImage 
    = new IIOImage(image, nullnull);
            ImageTypeSpecifier type 
    = ImageTypeSpecifier
                    .createFromRenderedImage(image);
            ImageWriter writer 
    = (ImageWriter) ImageIO.getImageWriters(type, "png")
                    .next();
            ByteArrayOutputStream out 
    = new ByteArrayOutputStream();
            writer.setOutput(ImageIO.createImageOutputStream(out));
            writer.write(
    null, iioImage, null);
            BASE64Encoder encoder 
    = new BASE64Encoder();
            String result 
    = encoder.encode(out.toByteArray()).replaceAll("[\r\n]",
                    
    "");
            System.out.println(
    "data:image/png;base64," + result);
        }


    需要其他顏色,自己修改一下代碼即是。
    posted on 2007-05-18 15:30 金大為 閱讀(1302) 評論(1)  編輯  收藏

    評論:
    # re: 關于網頁上半透明遮罩的優化(關機效果) 2007-06-22 14:43 | 金大為
    經測試得:
    除ie外,瀏覽器基本都支持png Alpha透明及data協議,所以,這種遮罩代碼可以簡化為:
    if(BrowserInfo.isIE()){
    masker.style.background = "#CCCCCC";
    masker.style.filter = "Alpha(opacity=50)";
    //}else if(BrowserInfo.isGecko()){
    // masker.style.background = "#CCCCCC";
    // masker.style.MozOpacity = 0.5;
    //}else if(BrowserInfo.isKhtml()){//support png alpha?? need test..yes support
    // masker.style.background = "#CCCCCC";
    // masker.style.KhtmlOpacity = 0.5;
    //}else if(BrowserInfo.isOpera(9)){
    // masker.style.opacity = 0.5;
    }else{
    //masker.style.background = "#CCCCCC";
    masker.style.backgroundImage = "url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mM4ffp0AwAHqALiYeNxSgAAAABJRU5ErkJggg==)";
    }  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 国产福利免费视频 | 欧美色欧美亚洲另类二区| 91香蕉国产线在线观看免费| 亚洲国产美女视频| 国产成人无码区免费内射一片色欲| 91久久精品国产免费直播| 亚洲日韩精品A∨片无码| 一区二区三区免费视频网站| 免费国产在线观看| 色婷婷亚洲十月十月色天| 你懂的免费在线观看网站| 亚洲av永久无码制服河南实里| 最新国产乱人伦偷精品免费网站| 亚洲毛片αv无线播放一区| 国产在线观a免费观看| 亚洲va久久久噜噜噜久久狠狠 | 麻豆安全免费网址入口| 亚洲国产日韩成人综合天堂| 精精国产www视频在线观看免费| 亚洲中文字幕久久精品无码APP | 亚洲国产精品久久66| 在线看片免费人成视久网| 中文字幕在线观看亚洲| 久草视频免费在线观看| 亚洲国产精品无码久久九九大片 | 最新欧洲大片免费在线| 国产精品亚洲аv无码播放| 国产成人亚洲综合一区| 免费一级特黄特色大片在线| 一个人看的www在线免费视频 | 免费一级毛片免费播放| 三级毛片在线免费观看| 久久精品a亚洲国产v高清不卡| 真人做A免费观看| 国产精品亚洲va在线观看| 国产亚洲情侣一区二区无码AV| 国产午夜无码精品免费看动漫| 亚洲一区在线免费观看| 免费一级毛片一级毛片aa| 2019中文字幕在线电影免费| 亚洲AV无码一区二区三区网址|