• 有一天,柏拉图问老师苏格拉底什么是爱情?老师就让他先到到麦田里去,摘一棵全麦田里最大最金黄的麦穗来,期间只能摘一次,并且只可向前走,不能回头。

    柏拉图于是按照老师说的去做了。结果他两手空空的走出了田地。老师问他为什么摘不到?

    他说:因为只能摘一次,又不能走回头路,期间即使见到最大最金黄的,因为不知前面是否有更好的,所以没有摘;走到前面时,又发决总不及之前见到的好,原来最大最金黄的麦穗早已错过了;于是我什么也没摘。

    老师说:这就是“爱情”。

    之后又有一天,柏拉图问他的老师什么是婚姻,他的老师就叫他先到树林里,砍下一棵全树林最大最茂盛、最适合放在家作圣诞树的树。其间同样只能砍一次,以及同样只可以向前走,不能回头。

    柏拉图于是照着老师的说话做。今次,他带了一棵普普通通,不是很茂盛,亦不算太差的树回来。老师问他,怎么带这棵普普通通的树回来,他说:“有了上一次经验,当我走到大半路程还两手空空时,看到这棵树也不太差,便砍下来,免得错过了后,最后又什么也带不出来。”

    老师说:“这就是婚姻!”

    人生就正如穿越麦田和树林,只走一次,不能回头。要找到属于自己最好的麦穗和大树,你必须要有莫大的勇气和付出相当的努力。

  • 刚开始学XMLHTTP,试写的一个读取XML的JS脚本,没什么技术含量,主要用来读取一个类似于通讯录的XML文件。

    ------------------------------js-----------------------------------
    <script type="text/javascript">
    var xmlHttp;

    //创建对象
    function createXMLHttpRequest(){
     if (window.ActiveXObject){
      xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
     }else if (window.XMLHttpRequest){
      xmlHttp = new XMLHttpRequest("Msxml2.XMLHTTP.3.0");
     }
    }

    //发请请求
    function doSearch(url){
     createXMLHttpRequest();
     xmlHttp.onreadystatechange = handleStateChange;
     xmlHttp.open("GET",url,"true");
     xmlHttp.send(null);
    }

    //处理响应
    function handleStateChange(){
     if (xmlHttp.readyState == 4){
      if (xmlHttp.status == 200){
       parseResults();
      }
     }
    }

    //取得URL
    function createURL(text){
     var url;
     url = "BranchAreaInfo.asp?AreaID=";
     if (text != ""){
      url += escape(text);
      doSearch(url);
     }
    }

    //读取XML文件
    function parseResults(){

     var results = xmlHttp.responseXML;
     var sDiv = "";

     var shop = "null";
     var name ="";
     var address = "";
     var phone = "";
     var fax = "";

     var hhitshop = results.getElementsByTagName("shop");
     for (var i = 0; i< hhitshop.length; i++){
      shop =  hhitshop[i];
      name = shop.getElementsByTagName("name")[0].firstChild.nodeValue;
      phone = shop.getElementsByTagName("phone")[0].firstChild.nodeValue;
      fax = shop.getElementsByTagName("fax")[0].firstChild.nodeValue;
      address = shop.getElementsByTagName("address")[0].firstChild.nodeValue;

      sDiv += addDiv(name,photo,address,phone,fax);
     }
     document.getElementById("results").innerHTML = sDiv;
    }

    //输出格式化
    function addDiv(name,photo,address,phone,fax){
     var WDiv = "<div class='shop_list'>";
     WDiv += "<a href='#'><img alt='"+ name +"' src='"+ photo +"' /></a>";
     WDiv += "<dl>";
     WDiv += "<dt><a href='#'>名称</a></dt>";
     WDiv += "<dd>电话:"+ phone +"</dd>";
     WDiv += "<dd>传真:"+ fax +"</dd>";
     WDiv += "<dd>地址:"+ address +"</dd>";
     WDiv += "</dl>";
     WDiv += "</div>";
     
     return WDiv;
    }
    </script>
    ----------------------------------------------------------------

    -----------------------------XML------------------------------
    <?xml version="1.0" encoding="utf-8" ?>
    <hhitshop>

     <shop>
      <name>aa</name>
      <phone>01234567</phone>
      <fax>01234567</fax>
      <address>aaaaa</address>
     </shop>

     <shop>
      <name>bb</name>
      <phone>12345678</phone>
      <fax>12345678</fax>
      <address>bbbbb</address>
     </shop>

     <shop>
      <name>cc</name>
      <phone>23456789</phone>
      <fax>23456789</fax>
      <address>ccccc</address>
     </shop>
    </hhitshop>
    -----------------------------------------------------------------

  • 现在学习WEB标准的人越来越多,网上对于CSS,WEB标准的文章多如牛毛,不信?上百度或GOOGLE搜下。牛毛虽多,但长得也差不多,往往都是一篇文章的几个版本,这也算是方便了初学者吧,很多的文章都是E文的,感谢那些翻译的人,为WEB标准在中国的推广出了一份力,让我们这些E盲可以有机会学习到外国的技术。

    如果你也学习WEB标准,不知你是否发现,那些“大虾”最常说的话是就是:

    “这个不推荐使用。”,然后再加上句:“不推荐不表示不能用。”

    这……不推荐跟不使用是两回事吧,能用就行啦,如果有更好的方法,那你说出来啊,没有就别开口,说这么一句,装“高手”啊。

    我想大家都看过阿捷的《使用标准的好处》,里面提到

    -----------------------------------------------------------
    简单说,网站标准的目的就是:

    • 提供最多利益给最多的网站用户
    • 确保任何网站文挡都能够长期有效
    • 简化代码、降低建设成本
    • 让网站更容易使用,能适应更多不同用户和更多网路设备
    • 当浏览器版本更新,或者出现新的网络交互设备时,确保所有应用能够继续正确执行。

    对于网站设计和开发人员来说,遵循网站标准就是使用标准;对于你的网站用户来说,网站标准就是最佳体验。
    -----------------------------------------------------------

    看起来是很吸引人的,不过这是在标准成功实现的情况下,用一句话说就是“目前正处于初级阶段”。目前为了让页面尽可能的接近标准,所能做的还是hack,“一般都推荐使用html代码上的hack而非CSS上的hack,因为CSS的bug总是会被修正的,只是时间问题了 sigh...”、“我说的html代码的hack意思是在html里面在基本不影响语义的情况下添加一些markup,来解决一些问题。比如box model的hack,可以嵌套两层div,通过css分别样式化两个div来实现效果,这样就不会向后不兼容了。:)”——这是一位高手对我文章的评论,的确是让我学到了不少,可是同时让我迷茫了,hack还有推荐的跟不推荐的?hack就是hack,hack不是标准,是“过渡”期对现在浏览器的一种非标准的标准化。只要浏览器不完全的、正确的支持标准,那标准化的路就没有尽头,hack就有其存在的必要性。

    写到这我觉得自己有点偏激了,标准的目的是什么?让网页可以生存得更久、让更多的浏览器可以显示、让更多的人可以看到、向后兼容……你是否发现,这一切都是跟浏览器分不开的,可以说标准其实是依赖于浏览器的发展,如果新版的浏览器不正确的理解标准,为了让页面显示“正常”,就会出现新的hack,那之前的hack还是对以前版本的浏览器有效,就算在新版本的浏览器中将被修正。除非不再使用旧版的浏览器,可是有多少人会一直让自己所使用的浏览器版本保持在最新呢?

    一时思想混乱,就写到此吧……

  • 改版心得

    2006-03-17 | Tag:CSS 代码分享

    这两天又给BLOG换了个衣裳,主要是想改变下那灰色的调调,也许现在看上去感觉更爽一点。

    这次修改主要遇到的问题是背景的问题,因为页面是动态的,高度不确定,所以没办法定高度,这在FF的问题就是:当里面的对象浮动时,背景不能填满。看了《CSS布局自适应高度解决方法》一文后,使用了文章里提到的方法,效果不错Good

    在这里补充一下文章中的方法对IE5/IE5.5的兼容方案:

    -----------------------------------------------
    #wrap{
    height:100%;/*将高设为100%,可同时兼容IE/WIN的几个版本*/
    overflow: hidden;/*IE5*/
    }
    #wrap/*IE5.5+*/{
    overflow:hidden !important;/*IE6、FF*/
    overflow /*IE5.5*/:visible;/*当高设为100%时,在IE5.5中须把overflow属性设为visible*/
    }
    #sideleft, #sideright{
    padding-bottom: 32767px;
    margin-bottom: -32767px;
    }
    -----------------------------------------------

    原理就不多说了,这个方法很实用,推荐。

  • IE vs FF

    CSS 兼容要点:

    DOCTYPE 影响 CSS 处理

    FF: div 设置 margin-left, margin-right 为 auto 时已经居中, IE 不行

    FF: body 设置 text-align 时, div 需要设置 margin: auto(主要是 margin-left,margin-right) 方可居中

    FF: 设置 padding 后, div 会增加 height 和 width, 但 IE 不会, 故需要用 !important 多设一个 height 和 width

    FF: 支持 !important, IE 则忽略, 可用 !important 为 FF 特别设置样式

    div 的垂直居中问题: vertical-align:middle; 将行距增加到和整个DIV一样高 line-height:200px; 然后插入文字,就垂直居中了。缺点是要控制内容不要换行

    cursor: pointer 可以同时在 IE FF 中显示游标手指状, hand 仅 IE 可以

    FF: 链接加边框和背景色,需设置 display: block, 同时设置 float: left 保证不换行。参照 menubar, 给 a 和 menubar 设置高度是为了避免底边显示错位, 若不设 height, 可以在 menubar 中插入一个空格

    转自netvtm.com

  • 这是一个比较典型的三行二列布局,每列高度(事先并不能确定哪列的高度)的相同,是每个设计师追求的目标,按一般的做法,大多采用背景图填充、加JS脚本的方法使列的高度相同,本文要介绍的是采用容器溢出部分隐藏和列的负底边界和正的内补丁相结合的方法来解决列高度相同的问题。
    先看代码:

    -----------------------------------------------
    #wrap{
    overflow: hidden;
    }
    #sideleft, #sideright{
    padding-bottom: 32767px;
    margin-bottom: -32767px;
    }
    -----------------------------------------------

    实现原理:

    块元素必须包含在一个容器里。
    应用overflow: hidden 到容器里的元素。
    应用 padding-bottom(足够大的值)到列的块元素 。
    应用margin-bottom(足够大的值)到列的块元素。
    padding-bottom将列拉长变的一样高,而负的margin-bottom又使其回到底部开始的位置,同时,溢出部分隐藏掉了。

    兼容各浏览器

    IE Mac 5
    得到高度正确,所以要过滤掉上面的代码。
    /*\*/
    #sideleft, #sideright{
    padding-bottom: 32767px;
    margin-bottom: -32767px;
    }
    /**/
    Opera
    1. Opera7.0-7.2不能正确清除溢出部分,所以要加:
    /* easy clearing */
    #wrap:after
    {
    content: '[DO NOT LEAVE IT IS NOT REAL]';
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
    }
    #wrap
    {
    display: inline-block;
    }
    /*\*/
    #wrap
    {
    display: block;
    }
    /* end easy clearing */
    /*\*/

    转自设计中国

  • 李敖说如果我是日本人,我也会去参拜靖国神社!
    我想找个给英雄下跪的地方
    ——李敖写在抗日战争胜利60周年

    如果我是日本人,我也会去参拜靖国神社!
    而我是中国人!
    做为中国人,今天我想起在抗日战场和朝鲜战场上用血肉之躯抵抗了小日本和美帝机枪大炮的几千万中国先辈……我欲哭无泪,我想跪下叩一万个响头……却找不到他们的牌位
    日本人为什么要参拜靖国神社?因为对于大和民族来说,里面所供奉的:都是他们民族的英雄呀!
    为了国家民族的荣誉,日本军人可以驾机冲向美国军舰,同归于尽!战败时可以集体剖腹!剖腹!
    你知道怎样剖腹吗?把刀插进腹部往胸部用力一剖,再横着用力一刀!
    淋漓尽致!
    为了祖国的尊严,你们谁敢!谁愿?!不敢就没有资格说日本人!

    张自忠,是谁?
    邱少云,还记得吗?
    朝鲜战场上的两位特级战斗英雄是谁?
    回答的出来吗?你知道他们的事迹吗?你知道他们是怎样死的吗?今天我们已经把他们遗忘了差不多了吧?
    我们已经蜕变了,我们已经没有了精神,我们不配做中国人,我们的时代罕有英雄,罕有男子汉!我们丢了祖宗的脸,中国历史上从来没有一个时代象今天一样窝囊!
    当然这指的不是我们的政府,而是我们的这一代人。
    我们的政府懂得强国之道,懂得什么叫忍辱负重,后发制人,我们的政府建立了丰功伟绩。
    而我们的青年,除了象狗一样叫几声,骂几声,无所作为。
    我们的祖先在历史上领先了几千年,多少英雄豪杰,多少王朝强盛之极天下之大,唯我独尊,侠客英雄,君子大家层出不穷,他们能够舍生取义,光明磊落,精忠报国,贫贱不能移,威武不能屈。
    而今天为了钱可以没有人格,更何况什么国家民族的尊严?!
    没有想到,到了今天,中国已经找不到什么英雄!
    即使有,也被官吏当作花瓶装饰一下政绩!被一些白痴当做傻瓜猴子嘲笑!
    今天是我们自己有人看不起中国传统的东西,它们是西洋的走狗!
    日本人有靖国神社可以参拜,我们没有!也没有人要去!
    烈士尸骨还在,名字已经消失……
    我想找个给英雄下跪的地方!

    我想请日本人告诉我当年是谁在中国的哪个地方和日军血战过!
    不过日本人肯定不告诉我,我们的英雄已经战死几十年,日本人仍然害怕他们。
    但今天我们比抗日时有钱,日本人却变本加厉地唾弃我们!
    这不能怪他们,我们是活该的:
    一面我们的尾巴翘得如此之高,欢迎日本的二流商品在中国称雄,陶醉于日本影片,崇拜日本明星,我宁愿他崇拜东条英机,将来成为中国的东条去灭了日本。
    一方面我们的下一代很多被娇生惯养,严肃的东西不看,中国历史一问三不知,中国的未来是一大群软骨头的孬种。
    当日本人在小学课本里彻底扭曲侵华历史时,我们的教育学家居然在讨论金庸武侠小说要不要入选中学教材!
    更何况,我们不知从什么时候起,居然连英雄都唾弃。
    这已不是悲哀那么简单了!

    在民族精神上,中国人不如日本人。
    日本人说:从总体上看,支纳人是世界上最低劣的种族。在总体素质上,南方支纳人又要远远优于北方支纳人……我们日本人(除了只会叩头的少数政客外)愿意称你们国家为支纳,不愿称它为中国,但我们称宋代以前为中国。我们轻视支纳人的一个原因是……我小的时候,父亲带我去日比谷公园,指着缴获北洋水师的战利品对我说,日本就是在打败支纳的北洋水师后,才成为世界上主要强国的。当我来到支纳的时候,我发现支纳人比我想象的还要低劣,他们对我这个毫无背景的日本学生点头哈腰,说什么都是日本的好……当我问他们支纳一个在韩战中为了完成任务宁愿被火烧死的英雄时,他们居然说那种傻瓜再也不会有了。我们日本有靖国神社……我们日本人将会永记为国殉死的英灵,他们在靖国神社里享受他们应得的敬意。每当我们唱起为国而逝的英魂啊,你要常常回到慈母的梦中,我们就会感慨万千,永志难忘。
    支纳人,我们敬拜靖国神社时,你们根本没有资格说三道四。
    对他的说法我深有知己之感,他日我若在战场上遇到他,必先干上三杯再打!
    张自忠将军在枣宜战役壮烈而死,日本高级军官亲自抬棺!
    虽为敌人,杀死日本人无数,但日本人起码知道,英雄是用来崇拜的,这样的英雄,即使是敌人,也应表示万分的敬意。
    只有这样敬重英雄的民族,才能长盛不衰,日本人就是这样的民族,日本人不是看不起中国,而是看不起现在的中国人。
    我们的祖先他们不敢辱没。
    只有我们这些不肖的子孙自己才干出辱没祖宗的事,忘了祖宗的许多精神和思想精髓。
    日本人只尊重强者,你打死他,也要尊重你。
    日本人唾弃弱者,你越跪得欢他越把你当狗对待。
    而我们是弱者。
    中国的历史上,有多少英雄惜英雄的故事,如今只是故事罢了。现在的人连自己眼前的英雄都讥为傻瓜!何况别人的英雄?
    当然,我说是有立场的,日本人的英雄是我的敌人,但即使要灭之而后快,也应先敬三分,对于本国的小人汉奸,即使是同一祖宗,也应诛杀而唾弃。
    我们有的人看不起先辈,看不起父辈,认为他们老土,但正是在这些老土的父辈身上,才有希望看到中华民族真正的精华,正是他们直接间接和日本美帝斗争,才保住了我们的最后一点尊严。
    今天中国周边形式严峻,也有许多英雄在大叫骂娘,让我感到中国真的没有希望了,关键是没有人想一下我们能干什么?

    我们要报仇,但只不是用嘴!那只会象阿Q!
    血债要血还,但我们要懂得尊重自己尊重敌人,大丈夫喜怒不露,杀人于无形。
    如果,打一场仗可以打出我们的民族精神来,可以让我们的科技和工业前进一大步。
    那么,我们打!
    无赖的老年日本人根本就不承认侵略过中国!
    无知的年轻日本人根本就不知道侵略过中国!
    无耻的军国主义者说当慰安妇在是一种荣耀!
    我们却在自我安慰的寄希望于日本人的良知!
    而他们认为我们这些可怜的第三世界在编造故事以敲诈他们的钱财……
    如果你是一个不太喜欢狂热、激进的温和派,那么我个人认为你应该所做的是:
    把不买日货这个原则默默地记在心里,我们没有必要非得用示wei或游xing来反对日本可耻的行为。
    我们应在心里默默的抗议日本对我们犯下的错误和他们对这些错误无耻的抵赖!
    这是做为中国人最起码的原则吧?
    我们只需要在购买商品的时候更多的忽视一下日货,能不买日货就不要去买。
    相信自己,只要我们团结起来,人人都能做到这一点,就会使日本在经济上受到打击,就会使他们不敢再轻视我们的力量。
    如果你认为我是在痴人说梦,那么可以先看看下面的数据:
    在世界各地,几乎90%的华人用的是日本车和日本电器。
    我统计过如果世界各地的华人停止购买日货,日本每年将损失1000-1400亿美元的外汇收入!
    而外汇收入是任何一个国家的源泉和动力!
    它和国民经济的关系是一带动八,或者说:损失一份外贸收入,这个国家就要损失八份的国内经济收入。
    换算一下:1000-1400亿美元的外汇收入等价于一兆美元:日本经济的总产值的五分之一。
    所以,如果世界各地华人同心协力,不用动刀动枪,就可制日本于死地!!
    而且是永久的死地!

    我们应该学习尤太人:曾经集体拒买一家德国工厂的产品,最后导致这家公司的彻底破产!
    起因就是因为这个公司的总裁说了一些所谓理解希特勒的话!
    现在德国人对犹太人特别好,您知道为什么吗?
    原因有二:
    一个是怕:因为尤太人特别团结;
    第二个是尤太人的狠:尤太人从来没有放弃过对纳粹分子的追杀!
    只要在这个地球上发现有任何藏匿的纳粹分子,他们就一定就会抓捕绑架如果实在无法得手,那就杀!
    看看我们中国呢?!
    对刽子手的仁慈,无疑就是自杀!
    开始行动吧!
    同胞们:多少年过去了,还要等吗?
    开始行动吧:
    从我开始做起!
    从我家开始做起!!
    从我的朋友开始做起!!!
    从我身边的各个组织开始做起!!!!
    只要大家共同努力:
    最后,我想最多10年,全世界所有的华人都会做到!
    既使能做到一半。对日本的打击也是致命的!!
    组织一个全球性的拒买日货复仇组织,请在各地串连串连,好吗?!
    同胞们,开始行动吧!
    请大家意识到拒买日货的重要性。
    拒买日货首先要防止被日本狗误导。
    有些所谓的爱国人士(其时是被日本秘密收买的哈巴狗,目地是挑拨分离我们本来就不团结的中华大众),它们经常提出:拒买日货是不可能做到的,原因是几乎所有的轿车、电器里,多少都有日本的零件。所以还是打住吧!
    拒买日货就到此为止是什么用意?
    难道中国人感觉不到么!感觉不到日本在害怕!
    他们害怕看到中国大众组织起来,进而进行有效的抵制日货运动!
    故而在这个五十多年来首次完全有可能组织其一个有效的全球性拒买日货运动时,他们便会迫不及待地跳出来叫停!

    拒买日货,并非像他们所说的哪样因为这个计算机里有一个或一些日本零件,我就不买;这个电视里有几个日本造的电子器件,我就不要。
    拒买日货的口号实际上是要求全球中国人,在有选择可能的情况下,尽量不买日本造的货物,如汽车、电冰箱、洗衣机、电视、音响等等!
    五十多年来,华人一直记恨于日本,但可笑的是却没有一个有力的拒买日货组织!
    究其原因,就是因为中国有太多的日本狗从中挑拨分离我们本来就不团结的中华大众!
    中国同胞们:清醒过来吧!千万不要再被这种人玩耍了!

    拒买日货的意义是巨大的!
    她能让我们不动一刀一枪就打击了日本,同时又加快了中国经济的发展!
    她能让我们扼制日本,进而让中国立于不败之地!
    她能让我们的子孙免遭我们的前几代祖先和我们现代中国人所遭受的痛苦!
    她最终也能让这个几百年来一直顽固不化,一再屠杀掠夺中国人民的丑陋民族遭受到它应有的惩罚!
    你以为这容易做到吗?绝对不是!
    这需要我们大家的共同努力,才能让全体中国人慢慢地,逐渐的,先是意识到,然后才能真实地做到!

    至于某些不必要的担心:
    1.中日关系日渐友好。
    中日友好根本就不存在!过去没有,现在没有,将来也不会有!
    清醒过来吧,不要再自己骗自己!
    2.现在中日两国贸易总额每年达600亿美元。会不会因为我们全球华人对抵制日货,中国就会受到损失?
    这是不会的!原因是:
    a.日本出口到中国的是高级奢侈品,我们中华大众可以拒绝;
    b.中国出口到日本的是普通生活必须品,日本人很难抵制,他们其实是在享受着我们廉价的产品!
    3.另外,从中国的长远利益来看,减少对日本产品的过份依赖,对中国的国家安全是非常重要的,比如日本参加美国的NMD,其目的就是与中国为敌!

    原帖来自于网易社区:http://p4.club.163.com/viewArticleByWWW.m?boardId=v-lmzl&articleId=v-lmzl_109eec477e24f84

  • CSS hack是指我们为了兼容各浏览器,而使用的特别的css定义技巧。

    css hack