Categories

2011/11/30

让Blogger的小工具只在首页或内页显示的方法


    侧边栏的 小工具的默认设置是无论是博客主页还是文章内页都会显示的如果太多小工具的话,就会让人有一种凌乱的感觉 为了让一些小工具只在首页显示或者分页才看见看起来比较简洁一点 解释到很清楚了,只是小工具没那么多的话是没必要去隐藏的 蛮有用的功能因为常常需要用到,所以ost出来给自己和大家参考参考ps:,发生任何悲剧的话恕不提供任何技术支援~哈哈。
    一切都是31篇半原创半转载(并不是copy and paste)     内页是详细版图文教学~ 这个修改方法对小工具特别多的人很有用

    严重警告:先看下面蓝色字
1.控制台-布局-修改HTML,备份一下模板以防不测,然后勾选 "扩展窗口小部件模板"
2.查找到你想要在首页/内页隐藏的小工具的代码
提示:直接搜索小工具的标题(eg,随机文章),很容易就能找到代码位置。(搜索的快捷键是 ctrl + F)
3.找到那组代码中的两个"includable" 标签,在其中间加入两条红色代码,比如:
红色字为添加的代码
   <b:if cond='data:blog.pageType != "item"'>
   </b:if>

红色字为添加的代码,红色放在绿色的下面
    <b:widget id='HTML1' locked='false' title='%u6211%u8981%u9690%u85CF%uFF01' type='HTML'>
<b:includable id='main'>
<b:if cond='data:blog.pageType != "item"'>
<!-- only display title if it's non-empty -->
<b:if cond='data:title != ""'>
<h2 class='title'><data:title/></h2>
</b:if>
<div class='widget-content'>
<data:content/>
</div>

<b:include name='quickedit'/>
</b:if>
</b:includable>
</b:widget>
意思就是说那个 b:if cond='data:blog.pageType != "item"放在 b:includable id='main'  的下面
和那个/b:if 放在b:includable的上面

————————————————————————————

另外一个实例

比如说我不要让随机文章在分页显示:
   图片说明了一切

-打勾
-ctrl + F 搜索 随机文章
-在对应位置添加2个代码
<b:widget id='HTML11' locked='false' title='随机文章' type='HTML'>
<b:includable id='main'>
<b:if cond='data:blog.pageType != "item"'>
  <!-- only display title if it's non-empty -->
  <b:if cond='data:title != &quot;&quot;'>
    <h2 class='title'><data:title/></h2>
  </b:if>
  <div class='widget-content'>
    <data:content/>
  </div>

  <b:include name='quickedit'/>
</b:if>
</b:includable>
</b:widget>
这样就实现了该小工具"只在首页显示,而不在分页显示"的效果。如果你想要让那个小工具"只在分页显示,而不在首页显示",只要将第一个红色的代码替换为以下代码即可:
<b:if cond='data:blog.pageType == "item"'>
</b:if>             
上面这个是不在首页显示!
<b:if cond='data:blog.pageType != "item"'>
</b:if>       
上面这个是不在分页显示!有点错乱了
4.保存模板,完成

2011/11/29

Blogger范本应用CSS Sprites技术记事


    最近在修改Blogger范本之后,就想说应该拿个什么测速工具之类的检测一下Blog有什么问题。赫然想起之前电脑玩物 介绍了Google Page Speed ​​Online ,他可以提供网站速度评测指标的分析与指导,似乎颇值得拿来参考。


分析之后,Page Speed ​​Online指出「布丁布丁吃什么?」最优先需要修改的建议是「将图片合并到CSS合并图片」,也就是它建议我应用CSS sprites技巧来改善网页的读取速度。

我用Firebug检查了一下图片的请求状况,发现光是布丁的自我简介(2011年版) 就有56个请求(如上图)。趁着改良Blog的机会,我也想来练习做做看CSS Sprites,提升自己的程设能力。

<^>CSS Scrites原理

CSS Scrites是一种提高网页读取速度的技巧。其原理是降低图片请求(request)数量,以节省请求时额外消耗的速度。
概要作法是将网页中多张图片结合起来,再透过CSS语法调整,让每个位置都只显示该部分的图片。应用CSS Scrites之后,原本网页需要读取多张图片时需要跟伺服器请求的数量,会因为合并成一张图片,而大幅降低了请求数量,因此也节省了多次请求而消耗的速度。
其原理很容易懂,但是实作的时候却不容易。这需要熟悉HTML跟CSS语法才能进行,而且也需要分辨哪些图片可以应用CSS Scrites,或是哪些不行。
Page Speed ​​Online有给我们一些建议,我尝试翻译如下:
  • 合并会一起读取的图片:建议合并时常在同一页面中同时读取的图片。例如,每一页都会用到的同一组图示,就适合进行合并。相反的,每一次读取都会改变的动态图片,例如大头贴照片、或是在页面中会时常变更的图片,就不建议进行合并。
  • 优先合并GIF跟PNG图片:GIF跟PNG图片使用无损压缩法,因此合并时并不会因此降低合并图片的品质。
  • 优先合并小型图片:每一个图片请求都会需要固定的额外请求时间(request overhead),即使是下载小型图片,浏览器也会需要为此耗费额外的请求时间。藉由合并小型图片,将可以从每一次请求一张图片到一次请求就读取整张合并的图片,因此降低了额外请求的时间。
  • 合并可以快取的图片:建议合并快取时间(caching lifetime)较长的图片。如果图片已经被浏览器快取,那浏览器就不需要再次下载该张图片,以提高读取的效率。
  • 使用CSS Sprite服务:合并图片时,可以使用SpriteMe 之类的服务,让你轻易应用CSS sprites。
  • 最小化合并图片中的空白处:为了显示图片,浏览器必须解压缩并解码该图片。图片的尺寸通常是跟图片的解析度成正比。因此,当合并图片中的空白处过多的时候,即使没有明显改变图片的档案大小,但是没有显示的像素依然会占据记忆体的用量,造成浏览器回应速度变慢。
  • 合并使用同样色彩的图片:合并图片如果超过256色,将会让PNG从palette type改成使用truecolor type,并造成合并图片档案变大。为了产生最佳化的合并图片,要合并的图片最好都使用相同的256色。如果你的图片还有调整的空间,建议考虑想办法让你的合并图片色彩数量降低到256色。

<^>SpriteMe 的安装与分析建议

既然Page Speed ​​Online都建议我先从SpriteMe 开始了,那就先用SpriteMe看看有什么好的建议吧。
<^>安装SpriteMe书签
SpriteMe是一个书签小工具(Bookmarklet)请​​把下面的连结拖曳到书签列上吧。
SpriteMe
<^>使用SpriteMe

打开你要分析的网页,这边我一样以布丁的自我简介(2011年版) 来做做看。SpriteMe将网页中的图片分成「Suggested Sprites」(建议合并)与「Non-Sprited Images」(不合并图片)这两种。以下是详细的列表:

接着让我们来看看SpriteMe为什么建议合并与不建议合并的理由。
<^>合并建议1:合并不重复的图片
第一项是「vertical, varied width」(垂直的,多变的宽度),直接翻译还真是看不懂是什么意思,但仔细一看他列出的图片,大多都是宽度、高度不等,而且在CSS中都是不重复(no-repeat)的图片,简单来说就是建议合并的大杂汇啦。
以下举几张例子:
<^>合并建议2:X轴重复、宽度相等
这一个建议很特别,他分析出两张宽度相等(760px)的背景图,而且他们也都是设定为X轴重复(repeat-x),因此也适合合并成一张图。
这两张图各别是:
他们都Y轴的渐层效果。仔细一看,似乎这背景图也不需要这么宽,就能用X轴重复达到填满的效果了。
<^>不合并的建议
除了合并的建议之外,SpriteMe也给了不合并的建议。我把图片的长宽尺寸与理由列举如下:

<^>SpriteMe的使用过程

SpriteMe不仅仅是分析建议很详细,就连使用起来也很容易。
<^>建立合并

上面提到SpriteMe建议我合并X轴重复、宽度相等的图片,而该区右上角有个「make sprite」按钮,就能够自动产生CSS Sprite的效果。
按下去之后稍待一会,图片就合并成一张了。打开项目的详细事项,里面记载着SpriteMe调整过的元素内容。点选该元素,他会在元素外围描绘上红色的框线。
他同时也提供了一张合并后的图片,如上图。尽管我很好奇的是,不知道为什么SpriteMe合并之后的图片间会有这么多空白间隔(padding)。可能是预留排版出错时的缓冲空间吧?

SpriteMe直接将合并之后图片的语法写在受到调整的元素中。上图是页首背景图片直接套用了SpriteMe的合并图片,可以看到他以background-image跟background-position设定直接写在元素的style属性中了。
<^>输出CSS

虽然右上角有个「export CSS」功能,可以把合并后的图片与语法输出成CSS。只是在Chrome里面发生了JavaScript错误而无法执行,后来我改用Firefox 4来操作,就能够开启SpriteMe Export CSS网页。

Export CSS网页中,先告诉我刚刚我合并的图片网址。
然后下面列出了这个网页使用的CSS档案,并尝试在这些档案中找寻刚刚修改的元素设定位置。可惜因为Firefox的跨网域限制,SpriteMe没办法自动帮我分析这些CSS档案的内容。
接着他列出CSS的建议修改方式,包括删掉原本的图片,并替换上新的图片。这个建议可以让我轻易地修改CSS档案,非常地实用。其内容如下:
DIV id=header class=header section { background-image: url("http://www.blogblog.com/thisaway/bg_header.gif") background-image: url("http://www.jaredhirsch.com/ coolrunnings/public_images/a98ceddb07/spriteme2.png");   background-position: 0px -18px; }
DIV id=footer class=footer section { background-image: url("http://www.blogblog.com/thisaway/bg_footer.gif") background-image: url("http://www.jaredhirsch.com/ coolrunnings/public_images/a98ceddb07/spriteme2.png");   background-position: 0px -118px; }
当然,我会把SpriteMe产生的合并图片下载之后,上传到自己的空间,然后再把之间的网址改成我的空间,这样才不会造成SpriteMe伺服器的负担。

修改完成之后,图片的请求数从原本的56个降低为55个啰。
<^>分组宽度相当、颜色相近的图片来建立合并图片



如果直接采用SpriteMe的建议,把宽度、高度不等的图片直接合并,就会出现像上面的合并图片。在Page Speed​​ Online建议合并图片要尽量降低空白处,而上图很明显的违反了这个建议。多次尝试之后,我发现SpriteMe只会将图片垂直排列来合并。因此,如果只将宽度相当的图片进行合并,就能够将合并图片的空白处降低到最小。

上图是SpriteMe预设的建议,图片的宽度从760px到10px都有,合并起来将会出现相当多的空白。还好,SpriteMe也提供了让使用者自订合并图片的功能,请按下上面的「new sprite」按钮。



这时候上面就会出现新的合并列表,但是是空的。

你可以从下面的图片,将宽度差不多的图片拖曳到这个区块,SpriteMe就会依照你指定的图片建立新的合并图片。



我将合并图片分成三组,个别是宽度为10px的图片、宽度为760px的图片,以及宽度为47px到54px之间的图片来进行合并。
合并之后的结果如下:
这样子空白处就减少很多啰。
另外Page Speed​​ Online也建议将合并图片的颜色数量降低到256色之内,这也是分组时的一个参考依据。
<^>SpriteMe忽略了<img>图片
仔细比较一下Page Speed​​ Online给的建议,会发现SpriteMe还忽略了很多图片。再细部分析一下,这些图片都是以<img>图片标签显示的内容。

上面的「订阅所有留言」功能就用了大量的<img>标签,而且都是固定常出现的小型图片。Page Speed​​ Online建议我合并这些图片,但是SpriteMe并没有分析到这边。
为了要让SpriteMe侦测到这些图片,我必须先把<img>中src指定的图片,改成以background-image背景图片的方式来显示。
原本我是想在<img>直接设定背景图片,但是效果却不如预期。Firefox中,只有将<img>显示型态设为block的时候,才能顺利显示背景图。因此,我决定将<img>改成<div>,并以CSS的background-image来显示图片。

<^><img>改成<div>背景图

以下我以这个「订阅所有留言」的功能来说明修改的过程。这是一个写在小工具区的HTML程式码,内容如下:
< div  class ="subscribe-wrapper subscribe-type-COMMENT" >
    < div  style ="display: none;"  id ="SW_READER_LIST_Subscribe1COMMENT"  class ="subscribe expanded subscribe-type-COMMENT" >
        < div  class ="top" >
            < span  onclick ="return(_SW_toggleReaderList(event, "Subscribe1COMMENT"));"  class ="inner" >
                < img  src ="http://img2.blogblog.com/img/widgets/arrow_dropdown.gif"  class ="subscribe-dropdown-arrow"  />
                < img  border ="0"  align ="absmiddle"  src ="http://img1.blogblog.com/img/icon_feed12.png"  class ="feed-icon"  alt =""  />
                订阅所有留言
            </ span >
        < div  class ="feed-reader-links" >
            < a  target ="_blank"  href ="http://www.google.com/ig/add?source=bstp&feedurl=http%3A%2F%2Fpulipuli.blogspot.com%2Ffeeds%2Fcomments%2Fdefault"  class = "feed-reader-link" >
                < img  src ="http://img1.blogblog.com/img/widgets/subscribe-google.png"  />
            </ a >
            < a  target ="_blank"  href ="http://www.bloglines.com/sub/http://pulipuli.blogspot.com/feeds/comments/default"  class ="feed-reader-link" >
                < img  src ="http://img1.blogblog.com/img/widgets/subscribe-bloglines.png"  />
            </ a >
            < a  target ="_blank"  href ="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Fpulipuli.blogspot.com%2Ffeeds%2Fcomments%2Fdefault"  class ="feed-reader -link" >
                < img  src ="http://img1.blogblog.com/img/widgets/subscribe-netvibes.png"  />
            </ a >
            < a  target ="_blank"  href ="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Fpulipuli.blogspot.com%2Ffeeds%2Fcomments%2Fdefault"  class = "feed-reader-link" >
                < img  src ="http://img1.blogblog.com/img/widgets/subscribe-newsgator.png"  />
            </ a >
            < a  target ="_blank"  href ="http://add.my.yahoo.com/content?url=http%3A%2F%2Fpulipuli.blogspot.com%2Ffeeds%2Fcomments%2Fdefault"  class ="feed-reader -link" >
                < img  src ="http://img1.blogblog.com/img/widgets/subscribe-yahoo.png"  />
            </ a >
            < a  target ="_blank"  href ="http://pulipuli.blogspot.com/feeds/comments/default"  class ="feed-reader-link" >
                < img  align ="absmiddle"  src ="http://img1.blogblog.com/img/icon_feed12.png"  class ="feed-icon"  />
                Atom
            </ a >
        </ div >
    </ div >
    < div  class ="bottom" ></ div >
</ div >
< div  onclick ="return(_SW_toggleReaderList(event, "Subscribe1COMMENT"));"  id ="SW_READER_LIST_CLOSED_Subscribe1COMMENT"  class ="subscribe" >
    < div  class ="top" >
        < span  class ="inner" >
            < img  src ="http://img2.blogblog.com/img/widgets/arrow_dropdown.gif"  class ="subscribe-dropdown-arrow"  />
            < span  onclick ="return(_SW_toggleReaderList(event, "Subscribe1COMMENT"));" >
                < img  border ="0"  align ="absmiddle"  src ="http://img1.blogblog.com/img/icon_feed12.png"  class ="feed-icon"  alt =""  />
                订阅所有留言
            </ span >
        </ span >
    </ div >
    < div  class ="bottom" ></ div >
    </ div >
</ div >
程式码有点长,不过构造还算简单。大致上需要改的有两种类型,以下一一叙述作法。
<^>修改显示类型为block(区块)图片

有些<img>被赋予了display:block;的设定,表示他会跟<div>一样以block(区块)的样式显示。在「订阅所有留言」中,下拉选单的各种图示都是以这种形式呈现。
这种形式的<img>图片可以很容易地修改成<div>背景图,也不容易影响排版。
让我们先看看Add to Google这个图示的原始码:
   1:  < a  target ="_blank" 
   2:      href ="http://www.google.com/ig/add?source=bstp&feedurl=http%3A%2F%2Fpulipuli.blogspot.com%2Ffeeds%2Fcomments%2Fdefault" 
   3:      class ="feed-reader-link" >
   4:      < img  src ="http://img1.blogblog.com/img/widgets/subscribe-google.png"  />
   5:  </ a >
这是一个<a>连结标签包含着<img>图片标签的元素。在其他的CSS当中,此处的<img>被设定为display:block;,因此我们可以考虑直接把这种<img>换成<div>,并加上额外的CSS设定。
修改的过程有几个步骤:
  1. 在<img>后面建立<div>,并给予适当的class名称,以便后续CSS设定中可以正确地选择到该<div>。这边要注意的是,必须完整撰写<div></div>标签,而不能用<div/>这种空标签喔。
  2. 增加额外的CSS设定,包括:移除原本的<img>
    • background-image: url(图片网址):指定<img>读取的图片
    • background-repeat: no-repeat:不重复图片
    • width & height:根据图片大小设定
以下是修改之后的元素程式码与CSS设定:
   1:  < a  target ="_blank"  href ="http://www.google.com/ig/add?source=bstp&feedurl=http%3A%2F%2Fpulipuli.blogspot.com%2Ffeeds%2Fcomments%2Fdefault"  class ="feed-reader-link" >
   2:      < div  class ="subscribe-google" ></ div >
   3:  </ a >
   4:  < style  type ="text/css" >
   5: .feed-reader-link .subscribe-google {
   6:      background-image: url(http://img1.blogblog.com/img/widgets/subscribe-google.png);
   7:      background-repeat: no-repeat;
   8:      width: 104px;
   9:      height: 17px;
  10: }
  11:  </ style >
尽管大致上改到如此就可以告一段落,但是这段HTML还有继续改善的空间。
由于<a>标签中只包含<img>(后来被我换成<div>了)一个元素,因此我们可以考虑将样式直接套用到<a>中,省略掉多余的<div>。
更进一步修改之后的程式码如下。必须注意的是,CSS中选择器改成指定<a>的class名称,并加入显示类型display: block的设定啰:
   1:  < a  target ="_blank"  href ="http://www.google.com/ig/add?source=bstp&feedurl=http%3A%2F%2Fpulipuli.blogspot.com%2Ffeeds%2Fcomments%2Fdefault"  class ="feed-reader-link subscribe-google" >
   2:  </ a >
   3:  < style  type ="text/css" >
   4: .feed-reader-link.subscribe-google {
   5:      background-image: url(http://img1.blogblog.com/img/widgets/subscribe-google.png);
   6:      background-repeat: no-repeat;
   7:      width: 104px;
   8:      height: 17px; display: block;
   9: }
  10:  </ style >
修改之后的程式码又更简洁了。实际应用的时候,CSS设定会集中在其他档案中,而不会像上面一样跟HTML写在一起。
<^>修改显示类型为inline(同轴)的图片

<img>图片的预设显示类型是inline,意思是会跟文字一样一起排列。而<div>却是block显示类型,会强制将后面的内容换行。
有些时候,<img>会以原始的inline跟其他文字一起排列,这种情况要改成<div>就比较困难,通常还要搭配float浮动样式、margin外距调整、以及搭配一些CSS修改经验才能达成。
这次我要修改的是「订阅所有留言」左边的RSS图片,这张图片与「订阅所有留言」文字一起排列,是以预设的inline显示类型呈现。它的原始码如下:
   1:  < span 
   2:   onclick ="return(_SW_toggleReaderList(event, "Subscribe1COMMENT"));" >
   3:      < img  border ="0" 
   4:       align ="absmiddle" 
   5:       src ="http://img1.blogblog.com/img/icon_feed12.png" 
   6:       class ="feed-icon"  alt =""  />
   7:      订阅所有留言
   8:  </ span >
我为它进行的修改步骤为:
  1. 在<img>后面建立<div>,并给予适当的class名称,以便后续CSS设定中可以正确地选择到该<div>。
  2. 增加额外的CSS设定,包括:移除原本的<img>
    1. background-image: url(图片网址):指定<img>读取的图片
    2. background-repeat: no-repeat:不重复图片
    3. width & height:根据图片大小设定
    4. float: left:因为该图片位于文字的左方,所以用此设定
    5. margin 调整外距
修改后的程式码与新增的CSS设定如下:
   1:  < span 
   2:   onclick ="return(_SW_toggleReaderList(event, "Subscribe1COMMENT"));" >
   3:      < div  class ="feed-icon" ></ div >
   4:      订阅所有留言
   5:  </ span >
   6:  < style  type ="text/css" >
   7: .inner .feed-icon {
   8:      background-image: url(http://img1.blogblog.com/img/icon_feed12.png);
   9:      background-repeat: no-repeat;
  10:      width: 12px;
  11:      height: 12px;
  12:      float: left;
  13:      margin-top: 2px;
  14:      margin-left: 7px;
  15: }
  16:  </ style >

修改之后,因为加上了margin外距调整,感觉比之前的<img>更顺眼了点呢。
<^>显示图片让SpriteMe能够侦测
即使把<img>改成<div>的背景图片了,还要记得把他们显示出来(visible),SpriteMe才能够侦测并判断它是否适合成为合并的图片,否则会被归类成不适合合并的图片。

在分析之前,我先将「订阅所有留言」的选单打开,再使用SpriteMe的功能,如上图。



这下子SpriteMe总算侦测到刚刚我修改的<div>背景图,而且将它列入建议合并的图片中了。

<^>其他CSS Sprites技巧

SpriteMe是分析背景图片(background-image)以达到CSS Sprites技巧的效果,不过除了背景图片之外,还有其他技巧可以使用。
CSS拥有无限的可能性,而且随着浏览器跟标准不断地改变,未来也可能会有更好用的技巧出现也说不定吧。

<^>真的有必要做CSS Sprites吗?

尽管CSS Sprites能够降低图片请求数量、提升网页读取的速度,但任何技术都不是万灵丹,在使用CSS Sprites的时候我也发现到一些限制,在此提出来跟大家讨论一下:
<^>合并后的图片难以管理
现在我们将多张图片合并成一张大型图片​​,用CSS Sprites设定背景图片与背景位置。如果未来需要变更其中一张图片的高度,这不仅要把之前所有的图片都找回来,还需要修正下面的图片的背景位置。
为了避免这种情况发生,在使用CSS Sprites技巧时,尽量挑选不会变更的图片,或是将可能会一起变更的图片一起合并,要改的时候也一起改。
最后,要记得保留合并前的旧图片,以免未来要重新合并时找不到图片。我在CSS样式档中,就会将旧图片的连结先注解掉,让未来还有回复成原本图片的机会:
   1: #header {
   2:    background-color : #634320;
   3:    /*background-image: url(http://www.blogblog.com/thisaway/bg_header.gif);*/
   4:    background-image : url(http: //dl.dropbox.com/u/717137/blogger/img/bg_header_footer.png);
   5:    background-position : 0px -18px;
   6:    background-repeat : repeat -x;
   7: }
<^>将<img>转换成<div>的人工成本与风险相当高
SpriteMe不会分析<img>中的图片,而需要我们手动将<img>转换成<div>背景图,才能顺利让SpriteMe分析。前面我也简单地叙述了两种转换的过程,不过实际使用时一定会遇到许多更棘手的情况。
最大的问题仍是在<img>以inline显示类型与<div>的block显示类型基本上就有很大的差别。由于<div>一定要设定为block才能设定宽度与高度,所以不能单纯转换为inline显示类型。
当然,还有许多CSS设计技巧可以回避掉类似的问题,但不论是哪种方法,都需要相当有经验的CSS设计师才能做到。随随便便套用CSS设定,都会带来版面构造破坏的风险。
<^>区块有重复延展的需求时,尽量不要做CSS Sprites
前面SpriteMe的建议都是针对不重复、或是针对X轴重复的图片建议合并,但是有时候SpriteMe的建议也不是万能,它并不能预测到你这个区块未来是否有需要延展的空间。
有一种CSS设计,是在指定不重复(background-repeat: no-repeat)的背景图片(background-image),同时搭配背景颜色(background-color)的情况。这种设计并不是让背景图片重复来填满背景,而是用背景颜色来填满,但只有特定的地方显示背景图片而已。
「布丁布丁吃什么?」的范本中时常出现这种设计,例如上图的页首区块。它的CSS设定如下:
   1: #header {
   2:    background-color : #634320;
   3:    background-image : url(http: //www.blogblog.com/thisaway/bg_header.gif);
   4:    background-repeat : repeat -x;
   5: }

如果当页首资料量太多的时候(我绕了好多远路),背景还能顺利地延展开来,不会让版面变得很奇怪。

但是如果照前述的方式将页首区块的背景合并成CSS Sprites,当资料量一多的时候,就会发现页首丧失了延展性,背景变得很奇怪了。
即使不是资料量变多,而只是单纯地缩小视窗宽度,资料自动往下挤压而造成额外的高度需求,那也可能发生类似的破版画面。
尽管有很多技巧可以避免上述的问题,不过这边我想说的是,当区块有扩增、延展的需求时,不要轻易地将它的背景图片做成CSS Sprites,以免徒增版面发生错误的风险。

<^>成果与结语


经过CSS Sprites调整之后,布丁的自我简介(2011年版) 从56个图片请求数降低到了47个请求数。老实说,感觉成效并不明显。

另一方面主要的原因在于大多数图片并不是我能掌控的范围,像是Google Friend Connect的大头像、Plurk的显示图片。结果Page Speed​​ Online还是建议我去合并这些图片,我也没辄了。
附带一提,我并没有特别去注意下载速度与图片压缩的数量,因为实际上都是小图片的整并,比较这一点点差距没有多大意义。
总之,经过这次的把玩,总算对CSS Sprites这个技巧有更深入的了解。以后在设计网页的时候,不妨预先考量到可以进行CSS Sprites的转换空间,将<img>以<div>替代,然后最后再利用SpriteMe来动手术,努力提升提升网页读取效率吧。

blogger 所有文章列表


        blogger 好用就好用在自由度很大,爱怎么改就怎么改,但也因此变得麻烦,因为想要什么功能大部份都要自己来!还好网路高手云集,能想到的功能,大部份都已经有人开发了…

        ToC,Table of Contents,原版应该是Beautiful Beta 这里释出的,关于ToC 的原文在这。

        后来又有几种不同的修改版本,有的是做在侧边栏,或加一个可开合式的连结放在中间区块,但没有一种是我想要的啊,我想要直接就把文章列表列出来,少在那边给我开来开去的,多此一举XD所以我又很投机的把人家的js 给抓下来动了一些小手脚,然后传到google code 去…

        好的,不啰嗦,直接记录我的做法吧。

        我原先是参考Shiou's Notepad 所改良的版本,但主要就是不喜欢他的开合式做法,而且那些连结或列表抬头又全是英文,再加上要改的地方太多太细,哇呒尬意,所以我又偷吃步的把人家的js 给下载回来修改。 ( 原版 js 在此 )

        在js 里,我只修改了其中几个变数宣告,主要是想把列​​表抬头换成中文的。

     var tocHead1 = '文章标题';

     var tocTool1 = '以文章标题排序';

     var tocHead2 = '发表日期';

     var tocTool2 = '以发表日期排序';

     var tocHead3 = '分类标签';

        接着,因为我不想像的版本还要另外加css,所以我直接从tocTable 这个变数把class 拿掉,并手动加上table width,不啰嗦,直接订成100%… XDD

然后还顺便在抬头列和文章列之间加一条分隔线hr。

js 修改完之后,再来就是插入语法的部份。这里很简单,因为我想直接让列表列在中间区块,所以就开一篇新文章,用html 模式,把下面语法贴进去,一切就大功告成了。

<div id="toc" width="100%"></div> <!-- show 出列表的标签-->

<script style="text/javascript" src="http://danilee.googlecode.com/files/toc.js" ></script>

<!-​​- 修改过的js,传到google code 上后直接引用,以后就不必再改-->

<script src="http://maiamhere.blogspot.com/feeds/posts/default?alt=json-in-script&max-results=999&callback=loadtoc"></script > <!--这应该是抓文章的东西…我忘了是啥囧rz -->

<script language="javascript">sortPosts("datenewest");</script>

<!-​​-初始排序方式,我设成日期由新到旧-->

<script language="javascript">showToc();</script>

<!-​​- 呼叫 function,画出列表啦~~ -->

好了,真是简便又好用!感谢这些制作而且分享出js 的高手们m(_ _)m

结果发现还有一句英文没改到,Displaying all xxxx posts 这句,啊算了啦!看得懂就好啦!

去除Blogger博客的快速编辑按钮图标



      使用自定义域名之后,大陆地区可以暂时访问你的博客了,虽然排版很容易走形,确实是能访问了,模板图片都更新到可以访问的图床上,但是在浏览的博客的时候还是发现有很多红叉号显示在各区域下方或右下方。这些其实就是blogger.com的快速编辑按钮图标,其实一般是用不到的,通过后台就能直接编辑。那么怎么去除blogger.com的快速编辑按钮图标呢。起初搜索博客模板里面的图片,但是quickedit图标icon18_wrench_allbkg.png这张图不是在模板里面定义的,搜索不到。后来通过OceanBan的空间的介绍,发现其实很简单,具体方法是:


      切换到 布局 的 修改HTML 项目,给 扩展小窗口部件 打勾
搜索以下代码:


<b:include name='quickedit'/>


        直接删除所有的这行代码,这个方法对于关注者和blogger.com驱动的编辑按钮无效,但是也没有找到其他解决方法,有知道的欢迎留言告知,谢谢了。

2011/11/26

我的个人知识管理工具软件-月光博客


    前些天看了一本书《你的知识需要管理》,对于个人知识管理方面的内容颇有些感悟,这里我就总结一下我自己的个人知识管理所用到的工具软件,供大家参考。
个人知识管理(Personal Knowledge Management)的概念一般指个人通过工具建立知识体系并不断完善,进行知识的收集、消化吸收和创新的过程。总的来说,个人知识管理工具软件分为网络版和单机版,我个人认为,网络版的工具选择有几个大原则,包括:
1、数据可导出,这点非常重要,可以导出的数据,保证了你的数据永远是你自己的,即使该服务关闭了,用户也不会丢失信息。
2、服务商的专业度,尽量选择专业的大公司的服务商,可以保证服务的稳定性和数据安全性,要是系统三天两头出漏洞被黑客攻击就不好了。
3、服务商的诚信,对于网络服务,例如即时通讯、邮件、在线存储、网络硬盘,最核心的价值就是用户隐私问题和诚信。如果一家公司将用户的个人信息、聊天记录或邮件出卖,导致用户受到伤害,只要出现一例类似事件,这个服务就是不值得信赖的。
根据以上三个原则来看,网络服务尽量使用国外的,如无必要尽量不要使用国内的,这不仅仅是个人隐私问题,最重要的是数据安全问题,几年来发生的诸多案例是我不敢使用国内云服务产品的主要原因。
我的个人知识管理工具的总图如下所示,下面我将分别进行说明。
一、学习知识
    知识和信息不能混为一谈,信息是免费的,但毫无目标的获取信息,就无法将信息转化为知识。因此学习必须要有目标,如果你用有限的时间去学无限的知识,你将被知识"淹没",我们要学习那些给自己带来最大提升的知识。
时间是一个最稀缺的资源,在学习知识的过程中,必须考虑知识获取的"成本"问题,这个成本除了金钱之外,最重要的是时间成本。因此,学习知识的工具需要满足:"花费时间较短,获得价值较高的知识"。我先前介绍的Google Reader是一个不错的阅读学习工具,不仅仅有学习的功能,还有一定的保存知识、共享知识的功能,是个人知识管理的得力工具,如下图所示,详细的使用请参见我的《基于Google Reader的个人知识管理方案 》一文。国内的同类阅读器产品还有:鲜果、抓虾、QQ邮箱阅读、有道阅读等。 对于纸质书籍的发现和评论,豆瓣读书是一个理想的工具,在使用之前,先标记自己读过的较为喜欢的书籍,不建议标记娱乐性书籍,这样能保证"豆瓣猜"的准确性,之后豆瓣就能根据你的阅读兴趣找到相关的书籍,你可以根据其他人对书籍的评价来决定是否购买。期刊杂志也是同样的道理。
总的来说,网络和电子读物适合浅阅读,具有深度和专业的知识还是需要阅读纸质书籍,你付出了金钱,却节省了时间。
平时工作学习中遇到问题,可以直接使用搜索引擎来寻找答案,通过搜索引擎也可以学到一些你不知道的小知识。

二、保存知识
    保存知识的目的是为了在使用的时候能够最快速和准确地查询到相关内容。保存的方法有两种,一种是保存在本地硬盘,一种是保存在网络上。保存在本地的好处是较为安全、断网的时候也能查看,保存在网络的好处是只要能上网就能查看,分享更为方便。
Dropbox 是一个优秀的平衡本地和网络的同步存储工具,你保存在本地电脑的文件可以自动上传到网络空间里,并同步更新到你的其他电脑,对于多台电脑的管理非常方便,可惜这么好的一个工具前几天竟然给封杀了 ,真是无知者无畏啊。使用Dropbox保存知识,实际上就是利用文件夹来保存文档,本地文件夹的建立一定要合理,那样才能提高效率,如下图所示,具体请参考我写的《基于Dropbox的个人知识管理平台 》一文。保存网页可以使用本地浏览器书签或网络书签,使用网络书签管理收藏的网页非常方便快捷,当你收藏的页面逐渐增多时,管理书签的难度并没有随之增加。网络书签的首选是Delicious (美味书签),具有导入导出功能,收藏时能notes标注和tags标签,将文章中最有价值的东西摘录出来,或者将阅读时候的心得记录下来,并以标签区分,Delicious还有一定的搜索功能。国内的同类收藏夹产品还有:QQ书签(可导入导出)、百度搜藏(可导入、不可导出)。
Delicious最大的问题是没有类似百度搜藏那样的网页缓存,一旦收藏的网页地址内容不见了,或收藏的网站出现问题,你收藏的知识也将丢失。使用"百度搜藏 "的话,没有导出功能,保存的网址说不定还会消失,不太令人放心。
Gmail 是另一个常用的保存工具,IE浏览器可以使用"页面"-"用电子邮件发送此页面"来发送邮件到Gmail,Firefox需要安装一个扩展来实现"发送页面"功能,把数据保存在Gmail中后,就可以利用Gmail内部的搜索引擎快速搜索知识了。
在对纸质书籍阅读的时候,微软Office的OneNote是一个做笔记的绝佳工具,除了读书笔记之外,还可以保存各类其他知识,使用Dropbox可以同步不同电脑的OneNote数据。同类还有一个工具EverNote也具有分类和Tag功能,自身就支持在线存档。
    另一种保存数据的方法是博客,通过WordPress 等工具可以方便的建立一个博客网站,使用博客保存知识的方法很灵活,你可以用其做网页摘录,也可以用来做知识记录的工具,还可以将自己的心得体会写在上面,不但数据丢不了,还可以及时得到他人的反馈,与他人进行交流,即使博客的内容多了,查找信息也不难,利用搜素引擎即可进行全文搜索,可谓一举多得。
除了图书资料,电子文档之外,还有对"人"的保存,保存他人的联系方式,以便能通过最快捷的方式获得他人的帮助。联系人管理的工具很多,我使用的是Gmail自带的通讯录,好处是可以同步手机 ,还能在社会化应用里使用。除此之外,Linkedin和Facebook也是很好的通信录工具,好处是所有的通讯信息修改都由好友提供,能及时更新。

三、共享知识
    知识共享和传播,是为了让别人知道你知道的知识,并得到信息的反馈,为什么要分享,不在于你认识什么人,而在于什么人认识你,不在于什么人影响了你,而在于你影响了什么人。因此要添加一些高质量的好友,订阅其分享内容,多争取对方的关注。
知识共享的渠道很多,显然,微博客是一个很好的信息反馈平台,因为没有反馈的共享是失败的,而微博客的反馈是实时且方便的,满足了用户最基本的需求,在最短的时间内了解所有琐碎的个性化信息,并相互交流。微博客的首选平台是Twitter(也是个被封的服务),我们可以把平时一些想到的信息随时随地记录在上面,随手写"碎碎念",Twitter还具有完美的数据导出备份工具 ,不必担心数据丢失,使用我的开源Twitter同步工具 还可以将Twitter的信息实时分享到国内外其他微博和SNS网站,很方便实用。国内的同类微博客产品还有:新浪微博、网易微博、腾讯微博等。
四、使用知识
    知识的收集和积累之后,最重要的还是如何利用这些知识资料。Mindmanager是一款用来绘制思维导图的工具。利用这款软件我们可以轻松的绘制我们的思考思路,在面对复杂问题的时候可以理清思路。Mindmanager使用起来还是比较简单方便的。本文的大部分图片都是用Mindmanager制作的。
我们使用的网络工具也大多内置了搜索,Google Reader、Gmail、Delicious都内置了搜索功能,可以按关键字搜索以前所有的条目。
只有知识是不行的,只有被使用的知识才有价值,能不能将自己的知识使用好,是对一个人能力的重要考验,只有将你的知识最大化的转化为价值,才能提升你自己的个人价值和个人品牌。
以上就是我所用到的一些个人知识管理工具,如果你也有什么好的工具,请在后面留言和大家分享。

2011/11/25

《西蒙周专栏》血色校车


夫卡 通过 Google 阅读器发送给您的内容:


西蒙周(本文仅代表作者个人观点)
先看几组数据:
去年中国政府采购汽车金额攀升至800亿元,占总采购规模的14%,平均年增速超100亿元;
中国现有公车约为200多万辆,以一辆公车年消费10万元计,每年公车消费至少为2000亿元;
去年中国财政收入83010亿元,今年前10月,财政收入就超过去年总和,达到90851.68亿元,预计全年超过10万亿毫无悬念。
公车校车反差强烈
中国现有2.33亿名中小学生,其中有9000万学生需要乘坐校车,专用校车需求量为100万辆。目前全国校车数量难以统计,且分布极不均衡,一是经济发达地区比不发达地区保有量要多得多,二是城市比农村多得多。不过,即使在最富庶的珠三角几大城市,校车的保有量也只有900多辆。另一方面,鉴于市场有对校车的强烈要求,大批社会车辆,不论车况如何,都以各种方式担当着校车的角色。这其中,甚至还有大量的三轮车、拖拉机、人力车在滥竽充数。
前面的三组数据和学校校车的现状,构成了强烈反差。当各级官员总是哭穷喊苦,口口声声说没有钱投入教育、采买校车时,他们的座骑却一再更新换代,不停升级,直至豪华奢华。今年9月,中央公务用车问题专项治理工作领导小组办公室曾经公布,今年查出的违规公车多达17.26万辆。按每辆车价值20万元计,这批公车就价值345.2亿元。
弄明白这些数据和背景后,就更会被甘肃庆阳市正宁县的一宗车祸深深震撼。一辆核载9人的幼儿园校车,居然塞进去了64人,其中幼儿62名,老师1名,司机1名。这辆严重超载的校车上路不到2公里,司机为了抢时间,强行逆向行驶,迎头撞上一辆大货车,21个鲜活的生命就此终结。这当中,19个是懵懂不知、刚刚展开人生之旅的幼儿。
车祸惨剧令人震怒
这辆校车,隶属于小博士幼儿园。正如其名,19个天真无邪的孩子,可能刚被家长教育"要好好上学,将来当博士",他们怀揣着对未来的美丽畅想,兴高采烈地去上学。但是,迎接他们的那辆校车,却一点也没有能培养出博士的迹象,倒更像是一辆拉牲畜的车。为了能多拉点人,司机将后排座椅全数拆除,并换成几排长长的条凳。即使如此,这辆小小的面包车也无法坐得下62个孩子。于是,他们被硬塞进车,并挤成相片状。
这辆校车就这样上路了,它其实不是驶向幼儿园,而是奔向墓地。当轰然一声巨响响起时,这辆校车的颜色瞬间被孩子的鲜血染得殷红殷红,早晨本来清新的空气,也在瞬间有了血腥的味道。
血色校车就那样奇形怪状地躺倒在路上。死伤的孩子被很快抬走了,他们留下的血迹、书包、鞋子,到处都是。这样的场景,在令你悲哀、伤心、痛心之后,就不得不令你愤怒、震怒和骂娘。因为,你的脑海中无法不翻腾起那些公车泛滥、豪华的景象,也无法不翻腾起数以几百亿、几千亿计的公车消费数字。
公车换校车不很难
不是说,百年大计教育为本,要舍得投入吗?有关方面从上世纪九十年代就开始嚷嚷,教育投入要占每年GDP的4%,但是,直至现在,20年都快过去了,4%的目标竟然连一次也没有达到;
不是说,要大力发展中小学校车事业或产业,要配备最好的车辆和最好的司机,还要有最好的交通管理,给孩子们创造一条绿色通道吗?怎么今年教师节前刚说过的承诺,到了11月,到处都还在奔跑着破败的、简陋的、超载的各类校车?这或许可以理解为还没来得及实施,但是,至少该采取点应急措施避免可能的惨剧发生吧;
不是说,财力有限无法为学校配备校车吗?怎么事故一发生,庆阳竟能一下子掏出6.8个亿,发誓要在3年时间建成200所公办幼儿园,并要为每个公办幼儿园配备标准化校车1辆?庆阳官方可能是勒紧腰带、挤牙缝饿肚子硬省出来这笔钱,但既然事后能找到6.8个亿,事前就应该能挤出6800万或者680万,有了这笔钱,小博士幼儿园的19个孩子还会命丧黄泉吗?
据最新的《中国统计年鉴》,中国现有19522个镇,如果每个镇配备2辆40万元级别的校车,只需要156亿。这笔钱只相当于每年公车消费的1/10不到,只相当于今年查处违规公车价值的1/2不到,只相当于每年新增公车采购额的1.5倍。不为别的,就是为了孩子,就是为了大家的下一代,官府咬牙一年不买新车抠出100亿,再从公车消费中省出56亿,加在一起156亿,就足以买来80万辆标准校车。
公车换校车,做到这一点,不是很难吧。(完)

百度大全


2011/11/24

Google产品列表 - 维基百科,自由的百科全书



Google

了解 Google

这个Google产品列表列出了Google所有重要的自行开发或通过并购获得的桌面软件、手机、和互联网产品。这些产品或者是已经正式上线,或者在公测之中(Beta版),或者是Google实验室的试验产品。下面的列表还包括以前的已经被合并、放弃或更名的产品。产品的功能,比如网络搜索功能,则没有单独列出。

[编辑] 网络产品

以下产品均需要通过网页浏览器才能使用。

[编辑] 搜索

  • Accessible Search [1]
供盲人和视觉受损人士使用的搜索引擎。在搜索结果中,优先显示残障人士可以使用的网站。
每当用户所关注的搜索关键字有新结果出现时,用电子邮件通知用户。搜索结果包括网页、Google群中的结果和新闻。
用户把自己拥有物品的信息(如产品、房地产、招聘信息、活动等)提交给Google,以便其他用户搜索这些信息。信息在数据库中通过其特性进行组织(而不是搜索引擎的全文检索)。
  • 博客搜索[4]
博客搜索引擎(为保证实时性,需随时进行检索)。返回结果包括所有博客,而不只是Blogger(Google的博客服务)上的博客。用户可以用日期筛选搜索结果。
对图书进行全文检索的搜索引擎。Google扫描和存储图书的电子版。最终显示的内容根据与出版社的协议不同,或者显示概述或显示全书。
Google的网上付款服务,旨在简化网上购物的付款流程。网站站长可以使用这项功能为网站提供的服务收费。
在互联网上搜索程序代码。
  • 网页目录[9]
按层级结构排列的网页目录。网页和其分类来自"开放目录项目(Open Directory Project)"。但排序使用Google的PageRank算法。
导航索引站点,主要针对中国用户。
  • Experimental Search [11]
Google试验新的搜索界面的平台。包括以时间顺序显示搜索结果、在地图上显示结果、键盘快捷键等。
可搜索的美国商务新闻、分析、金融数据。功能包括公司信息汇总、博客搜索、互动图表、管理层信息、讨论群、投资组合等。
网上和电子邮件讨论服务和Usenet历史存档。用户可以加入群、建群、发文、跟踪感兴趣的话题、分享文件等等。Google群3.0于2007年1月上线。新功能包括生成自定义的页面和分享文件。
通过游戏的形式让参与者标识网上的图片。以便未来提高图片搜索的准确性。
图片搜索引擎,依据图片文件的文件名进行搜索。返回结果中显示图片的小图、文字链接和图片旁的文字说明。
一系列与语言相关的应用程序。包括翻译文字或网页的功能,以及在某一特定国家或语言搜索的功能。
搜索日常生活所需的信息,如火车时刻、菜谱、房屋信息。该服务已于2010年7月20日宣布停止
6月4日发布,可将众多搜索数据信息汇总到一张表格。
2010年7月27日上线,从页面设计来看,谷歌问答与天涯问答非常的相似。7月30日被GFW屏蔽,屏蔽的关键字是.google.com.hk/wenda。

[编辑] 广告产品

为网站拥有者提供的广告盈利计划。网站拥有者通过按点击计费或按千次显示计费的广告产生收入。广告投放者为Google AdWords计划的用户。投放的广告与网页内容相关。
Google的旗舰广告产品,也是Google的主要收入来源。AdWords提供"按点击付费"的广告服务。并提供针对特定站点的文字或通栏广告服务。
  • 网站优化工具[23]
AdWords集成工具的一部分。用来测试广告推广给不同的网站内容带来的效果。
为美国商家提供的在广播电台播放广告的计划。Google于2007年5月15日推出这一产品。广告客户通过AdWords的界面使用这一服务。
在搜索结果旁,用户可以直接点击一个电话图标,然后输入自己的电话。Google接通用户和商家的通话,Google付电话费。
非盈利性组织提供的,免费在AdWords广告网络投放按点击付费广告的服务。
目前在试用阶段的,按千次显示计费的广告计划。目前的目标用户是专业的广告客户、中介和合作伙伴。
  • DoubleClick for Publishers [28]
DoubleClick for Publishers(DFP)是Google的第三方广告托管解决方案,前身为Google Ad Manager,集成DoubleClick的DFP产品之后推出正式的DFP系统。

[编辑] 交流与内容发布

Google三维模型仓库汇集了用户用Google素描(SketchUp)制作的物体、地点(包括建筑)、交通工具等的三维模型。这些三维模型可以下载到Google素描或Google地球中。
为企业、小公司、教育机构定制的域名管理和网络服务的集成。包括Gmail,Google文档等其他产品。
博客发布工具。用户可以创建一个自己的博客,由Google托管。功能包括:照片发布、留言、博客组、个人档案、手机发布等。对用户技术要求很低。
免费的网络日程表程序。独特的功能包括"快捷添加",用户可以用自然语言输入来向日程表上添加项目。其他功能包括与Gmail的集成和日程分享。与Yahoo和MSN提供的产品类似。
支持多用户协作的电子表格和写作应用。把Google电子表格和Writely(Google收购的一个网络文档编辑软件)集成到同一个用户界面中。2006年11月推出。
针对手机用户的一个社会化网络站点。用户用短信发送他们的所在地点,这个服务发回正身处附近的意中人、朋友、朋友的朋友、其他有趣的活动的信息。
Gadgets是一种用户可以自行开发的小应用程序,实现一些简单有趣的小功能或显示信息(如日历)。小插件可以有两种形式:普适(Universal,可以插入个人网页、Google桌面及Google首页);桌面(Desktop,在Google桌面运行)。
免费网络电子邮件POP邮件服务。以充足的存储空间和超群的用户界面著称。于2004年4月1日推出,当时只能受邀请的用户才能使用。功能还包括通过手机使用和与Google Talk的集成。
社交网站服务
2005年5月推出。可以用户自定义的个性化首页。首页上可以包括Google小插件和其他网站的Feed。
足球社区网站。类似MySpace,每个用户有自己的个人档案,可以根据共同的兴趣加入小组。通过这个服务,球迷可以互相结识、组成俱乐部、了解Nike签约球员信息、并可以观看和上载视频和照片。
Google于2006年10月31日收购的wiki服务提供商。为中小企业企业提供维基平台服务。创始人包括Joe Kraus和Graham Spencer(Excite的创始人之一)(已被Blogger取代)。
用来在线上分享冲浪心得的网络便签程序。用户可以在浏览网页时粘贴、复制文字、图片、链接进记事本;保存下来;在其他计算机上查看;并与别人分享。
  • Marratech e-Meeting
Google员工内部使用的网络视频会议系统。Google于2007年4月19日从Marratech公司收购了这一软件。Google目前还没有开始推出基于这一软件的产品。
社会化网络服务。用户可以列出自己的个人和职业信息,以及朋友关系。并加入共同兴趣的社区。Google于2006年11月把允许所有人注册加入这一服务,而不是必须有人邀请。
网页制作和发布工具。用户可以制作个人网页并托管在Google的服务器上。
网上照片分享站点,与Picasa照片编辑软件集成。
网络新闻集成阅读工具。用户可以搜索、导入、订阅Atom和RSS feed。这项服务还支持嵌入的音频附件(Audio Enclosures)。2006年10月进行了重大的系统更新。
发布由团队编辑的网页
  • Shared Stuff
  • Questions and Answers
Google Voice可以使你创造一个独立的电话号码,通过该号码来管理你所有的手机号码、电话号码、语音邮件、短信等等。
著名的网络视频分享站点。用户可以上载、观看、分享视频短篇。Google于2006年10月宣布以价值16.5亿美元的Google股票收购YouTube。并于2006年11月13日完成收购。
互联网即时沟通与协作工具,用于取代电子邮件和即时通讯工具。
SNS社交网络,通过Google+,用户可以对不同的圈子分享不同的信息。

[编辑] 软件开发

开放手持设备联盟开发的开源移动电话平台
设计给上网本使用的开源操作系统
允许开发者编写和运行网页程序的工具。
一个开放的代码托管站点。要求其托管的程序必须为开源软件。
通过这个平台,利用定制搜索引擎、订阅链接和专题等技术,用户可以把Google的搜索功能扩展和应用到某些特定的网站和专题。
开源Java软件开发框架,允许网页开发者用Java创建Ajax应用程序。
一系列为网站站长提供的服务。帮助网站有关搜索排名、检索和其他网站维护工作。

[编辑] 地图

Google地图服务检索街道和卫星图片。在下列国家提供行车路线和本地服务搜索:美国、中国、加拿大、英国、法国、德国、意大利、西班牙、澳大利亚和新西兰。在一些国家还可以通过手机使用。
通过Google地图界面显示的火星表面的图像。可以显示地表高度、视觉图片和红外图片。这个服务于2006年3月13日,天文学家洛韦尔(percival Lowell)诞辰日推出。
通过Google地图界面显示的美国宇航局的月球表面图像。于2005年7月20日推出,纪念1969年7月20日人类第一次登月。
地图相册,特点在于用地点和标签云的方式组织照片。照片可定位在地图上,符合Google地球收录条件的将会在Google地球展示。
用来观看恒星和星系的工具,现在你可以通过一个浏览器版本的"Google Sky"访问此工具。
出租、小公共、豪华出租(Limousine)搜索服务,在美国的14个城市提供。实时显示车辆的位置。这项服务通过Google地图界面显示,与参与这一服务的租车公司等合作。
通过Google地图界面帮助乘客设计公交车的搭乘路线。于2005年12月7日推出,为美国九个城市提供服务。
为用户规划到某个城市旅游的游览路线。
(对于Google Earth,参见"独立应用程序")
网络音乐服务(iTunes,Winamp,Windows Media Player和Yahoo音乐)中音乐的流行趋势。趋势的数据来自Google Talk服务中"分享你的音乐"功能积累的数据。
新闻聚合和搜索服务。新闻聚合支持20多种语言。新闻的选择由程序自动进行,但从哪些网站选取新闻由编辑进行。
  • 按时间先浏览Google资讯[67]
可以按日浏览资讯、时代杂志封面、维基百科等的内容。
新闻搜索的一个功能,搜索过去200年的新闻文章。
搜索数以百万的专利。结果显示每个专利的图片、条款和引用信息。
搜索产品在网上商店的价格,包括拍卖网站。
Google中国提供的搜索趋势、热点服务。类似Google Zeitgeist,目前已停止。
学术文献的全文检索。内容涵盖许多学术领域和发表媒体。目前包括除Elsevier之外的所有网上有的学术期刊的文献。Elsevier是世界最大的科学文献出版商。
用来"测试革新性的用户界面"的搜索引擎。功能包括在同一页面显示搜索结果和图片。除了在隐私条款和使用条款中,在这个站点看不到Google的品牌。
当用户输入几个例子后,输出一系列相关的名词。比如输入"绿、紫、红",输出"绿、紫、红、蓝、黑、白、黄、橙、棕"。
一系列手机和PDA上的应用,包括Gmail手机版和手机上的网络搜索。
当用户键入搜索关键字的过程中,随时显示以键入部分开始的热门搜索。
  • Suggest Australia [76]
Auto-completion in search results while typing to give popular searches for Google Australia.
对特定大学网站进行搜索。
  • U.S. Government Search [78]
搜索引擎和个性化主页。搜索和内容只针对以.gov结尾的网站。
视频搜索、上载、存储服务。与CBS、NHL(美国冰球联盟)和NBA有合作协议。
通过语音搜索和联络本地商家的服务。没有额外电话费用。
  • 网页历史记录[81] (Previously Google Search History / Personalized Search)
纪录搜索历史、网页、图片、视频、音乐等等。还包括书签服务、搜索趋势和推荐。
网络搜索引擎,Google的核心产品。也是Google的第一个产品。1999年9月21日结束公测正式上线。目前仍然是Google最著名和使用最多的产品。它每天接收10亿次查询,是互联网上使用最多的搜索引擎。
谷歌音乐搜索是google在中国地区推出的音乐搜索及下载服务。Google通过巨鲸网提供的正版音乐资源供用户在线试听及下载。该服务目前只在中国大陆地区可以使用。

[编辑] 统计

给网站站长提供的网站流量统计工具。与AdWords深度集成。站长可以通过这个服务的统计数据优化其广告推广活动。这一功能基于Urchin软件。最近2007年5月的升级是基于Measure Map。
通过动画和互动的界面,显示和比较国家间的数据及变化趋势。(如人口、平均寿命、人均收入等等。)
网络搜索统计的图示。显示热门搜索关键字的变化趋势。可以同时显示多个关键字。结果可以按城市、地区、语言显示。同时显示相关新闻。
近期热门搜索关键字的集合。可以按周、月、年显示,并按专题和国家分类。

[编辑] 桌面软件产品

下列产品必须安装在计算机中才可以使用。
Google地球
SketchUp
Google Picasa
Google talk

[编辑] 手机产品

[编辑] 移动服务

这些产品可以通过移动设备或桌面浏览器来访问,如Firefox
只在某些美国网络可用。允许你从移动设备向Blogger发表日志。
从移动设备上阅读所有Google Calendar事件列表。这也是向你的个人日历中快速添加事件的一种选择。
在移动设备上使用标准的移动网页浏览器访问Gmail帐户。Google还提供了一个特制的移动应用程序来更快捷地访问和下载Gmail信息。
使用移动设备中比完整的在线应用程序更简单的界面来访问Google News
  • Google Mobilizer[92]
用移动设备访问网页的界面更友好。
简易版的iGoogle - 你需要访问信息页选择对你的个人移动设备兼容的模块。
以前Froogle Mobile的更新版。
在移动设备里阅读Google Reader
用Google的移动引擎搜索网页,图像,本地列表和移动设备专用网页。如果网页不能兼容移动设备,Google会用一种算法生成一个简易文本版本的页面。
  • Picasa网络相册[97]
让你能浏览你保存在网络上的相册。
在Google笔记本里查看编辑笔记。

[编辑] 可下载的手机产品

这些产品必须下载到移动设备上使用。
一个可下载并基于网络界面访问Gmail的应用程序,该程序具有Gmail交互功能,包括分类和归档。需要一个设置好的Java虚拟机或带有Google帐号服务的Android,在一些平台上不能使用(比如Palm的Treo)。
可以在移动设备上查看地图的应用程序。可以在Android、黑莓、Windows Mobile和Palm OS或者任何有设置好Java虚拟机的手机上使用。
  • Mobile Updater [101](仅黑莓)
让所有Google移动产品保持最新状态。该应用同时可以安装卸载这些产品。
  • Google Sync [102](仅黑莓)
使黑莓上日历与Google各种日历产品同步。
针对Android、黑莓智能手机IP电话应用。
一个在一些设备上看YouTube视频的应用(see [105])。

[编辑] 独立应用程序

产品名称运行平台简介发布时间产品网页
AdWords编辑器Mac OS X (10.4+), Windows 2000 SP3+/XP/Vista用户可以使用这个桌面应用程序管理自己的Google AdWords账户。更改自己账户和广告投放计划的数据,然后使数据与线上的服务同步。2006年1月24日[1][106]
ChromeLinux,Mac OS X (10.4+),Windows XP/Vista/7开源网页浏览器2008年9月2日[107]
桌面Linux,Mac OS X (10.4+), Windows 2000 SP3+/XP SP2+/Vista/7桌面搜索程序,检索用户的电子邮件、文档、音乐、照片、网络浏览历史、聊天和其他文件。并且可以在其中安装Google小工具(Google Gadgets)。2004年10月14日[2][108]
地球Linux, Mac OS X and Windows 2000/XP/Vista/7利用卫星照片、航拍和GIS(地理信息系统,geography Information System)显示的虚拟地球2004年从Keyhole公司获得[109]
Gmail通知程序/Google通知程序Mac OS X, Windows 2000/XP当有Gmail来信时通知用户。[110]
HelloWindows 98ME/2000/XP由google收购的Picasa公司开发。用户用这个服务可以通过互联网发送照片并在博客上发表。[111]
Google软件包/Google更新器Windows XP/Vista/7若干软件应用的集合。包括Google和其他公司的产品:Google地球、桌面搜索、Picasa图片管理软件、Google TalkFirefox浏览器等。2006年1月6日[3][112]
Google Pack Screensaver这是Google软件包的一部分。屏幕保护的图片可以来自本地硬盘,或RSSAtom Feed。[113]
PicasaMac OS X , Linux,Windows 2000/XP/Vista/7照片管理和编辑软件。提供照片库和简单的显示效果功能。2004年7月[114]
Picasa网络相册上载器
(Picasa Web Albums Uploader)
Mac OS X帮助用户把照片上传到Picasa网上相册。包括一个iPhone插件和一个单独的应用程序。[115]
安全接入
(Secure Access)
Windows 2000/XP给不能使用WPA802.1x协议的Google WiFi接入的用户提供的VPN客户端程序。[116]
SketchUpMac OS X, Windows 2000/Windows XP简单易用的三维构图程序。有独特的拖曳界面和与Google地球的集成。2006年3月14日购得软件[4][117]
Google TalkWindows 2000/Windows XP/Server 2003Vista网上即时聊天和通过VoIP通话的软件。包括上述服务,和一个客户端程序用于使用这个服务。使用XMPP协议。2005年8月24日[5][118]
VisigamiMac OS X一个图片搜索的屏幕保护。从Google图片PicasaFlickr搜索文件。2008年4月23日[119]
Web AcceleratorWindows 2000 SP3+/XP/Vista使用缓存技术来加速网页浏览的速度。2005年5月4日[120]
谷歌拼音输入法谷歌Windows 2000 SP4 / XP / Vista通过拼音输入汉字。2007年4月2日[6][121]

[编辑] 其他软件的扩展

下列是Google开发的软件,为其他公司的软件增加沿伸功能。
产品名称运行平台简介发布时间产品网页
Blogger Web CommentsFirefox扩展显示其他Blogger网站用户的相关留言。[122]
Google浏览器同步Firefox扩展帮助用户在不同电脑上(如家里、办公室)的火狐浏览器的信息(如书签、浏览历史等)保持同步。2006年6月8日[123]
Dashboard Widgets for MacMac OS X Dashboard Widgets用于Mac电脑控制皮肤的一系列小程序,包括Gmail,Blogger和浏览历史。[124]
Send to Phone网页和Firefox扩展用户可以通过这个服务可以给美国的手机发送有关网上内容的短信[125]
Google工具栏Firefox和Internet Explorer扩展安装在浏览器上的工具栏。功能包括Google搜索框、网络欺诈保护、阻拦弹窗及可以添加自定义的按钮。2000年12月11日[7][126]
谷歌金山词霸金山词霸合作版本可以中英/英中翻译2008年5月8日[8][127]
Chrome FrameInternet Explorer扩展让Internet Explorer能够使用Chrome引擎进行渲染及排版,并支持HTML5。[128]