查立:创业公司如何分配股份与期权

俺们创业者都是贱骨头,不去寻求过安安稳稳的日子,却偏偏要去冲浪、去拼命。创业图的是什么?是公司里的“股权”。

弟兄们教你一个字:Captable,这是一个恐怕在字典里都找不到的单词,却在创投和创业当中,无所不在、无时不用,什么意思呢?即创业公司里的“股份拼骨图”。公司成长需要不断引入资金,每次拿了投资人的钱就要给人家股份,所以“股份比例”会随着公司不断的融资和扩大而变化。

让我们来一起来玩一盘Captable的游戏…不,做一道“应用题”:以创业为起点、上市为终点,把一个创业公司成长过程中的每一次股份变化都汇总起来,看看这“股份拼骨图” 是如何发生变化的?这里面究竟隐藏着什么样的玄机,嘿嘿。

假设1:一个创业公司从一个idea到上市要进行三次融资:

A轮:证实模式;

B轮:发展、复制模式;

C轮:形成规模,成为行业龙头,达到上市要求。

假设2:公司发展需要不断有精兵强将加入,公司要不断拿出股份给团队成员。

假设3:每一轮VC的资本进来,公司大约要稀释25-40%。

假设4:公司业绩发展好,每一轮融资的估值都是在前一轮价格的基础上往上翻番,这叫溢价,VC的术语叫作Up round;但是创业公司免不了风风雨雨出现坎坷,有时候公司的钱烧光了,业绩还没有起来,急需有人投资,这样的公司在谈判桌上没有份量,对方愿意投资,但是估值很低,甚至低于前一轮的价格,创业者别无选择,也只好认了打折价让新的投资人进来,这种情况叫Down round,有点“贱卖”的意思。

好,让我们来看看黄马克公司的“股份拼骨图”吧:

创业公司开张时应该发多少股票?这是很多创业者在成立公司时碰到的第一个现实问题。

这个问题没有标准答案,建议初创团队先发约10,000,000股。在这个基础上,经过三次融资以及团队的期权,到上市的时候,公司的总股数会达到100,000,000到150,000,000之间,如果上市时每股定价为8-10元,这家公司的市值会有 8-10个亿,只要估值超过发行价,马上直逼成为人人眼红的Billion dollar公司。

把股数定一千万股还有一个原因,就是将来给员工发期权的时候,拿出0.5%来,对一家总股数是10,000,000的公司来说就是50,000股,而对一家总股份为100,000的公司,仅仅是500股,哪一个更加吸引人?!记住,将来给员工股份,别给百分比,给股数!

原始股东结构

股东名单 股权类型 股份 股份比例

黄马克/CEO 普通股 5,000,000 50%

刘比尔/CTO 普通股 3,000,000 30%

周赖利/COO 普通股 2,000,000 20%

—————————————————-

合计: 10,000,000 100%

黄马克的公司凭其优秀的团队和独特的Idea,获得了VC的青睐。A轮融资是以Pre money 350万美金的价格融到了250万美金,Post money即600万美金,A轮投资人要求原有股东同意发15%期权给管理团队,公司员工持股计划在A轮投资完成前实施。黄马克搞到了VC的一笔大钱,团队还占将近60%的公司股份,运气真不错。

A轮投资前,公司员工持股计划执行后的股权结构

股东名单 股权类型 股份 股份比例

黄马克/CEO 普通股 5,000,000 42.50%

刘比尔/CTO 普通股 3,000,000 25.50%

周赖利/COO 普通股 2,000,000 17.00%

员工持股 普通股 1,764,706 15.00%

———————————————————–

合计: 11,764,706 100.00%

一般来说,VC会要求员工持股计划在VC投资进来之前执行,这样VC就可以减少稀释。不过不能认为这是A轮VC自私,要知道B轮VC到时候也会要求在他们进来之前再执行一次员工持股计划,这时A轮VC和创始股东将一起稀释。

员工的期权比例应该留多少?这个问题也是没有标准答案的,一般来说是5-15%。创业公司的原始股是很珍贵的,尽管它在很多人眼里并没有什么价值。

A轮投资后公司(员工持股计划执行后)的股权结构

股东名单 股权类型 股份 股份比例

黄马克/CEO 普通股 5,000,000 27.63%

刘比尔/CTO 普通股 3,000,000 16.58%

周赖利/COO 普通股 2,000,000 11.05%

员工持股 普通股 1,764,706 8.75%

A轮投资人(领投方) 优先股 5,042,017 25.00%

A轮投资人(跟投方) 优先股 3,361,345 16.67%

———————————————————–

合计: 20,168,067 100.00%

从表中可以看出,A轮融资有一个领头VC(Lead investor)和一个跟投VC。顾名思义,领投VC负责整个项目的谈判、尽职调查、法律文件……跟投VC跟从领投VC放点儿钱,不过有时候拖个跟投VC一起进来是有战略考虑的一步棋子,余言后述。

即使有几个投资人同时参与这轮过融资,有人是领投、有人是跟投,但是他们被视作一个整体,他们签署同一份法律文件,享有同样的利益和义务。

……

唉,创业公司最大的问题是“不定性”,尤其是“证实模式”。瞧,虽然搞到了钱,但是黄马克的公司在A轮进来之后出现了管理和业务进展上的瓶颈,产品测试屡屡出错,没有按时投放市场,收入也没有按预期进来,不久,A轮融资的钱已经烧光,而B轮投资谈判一拖再拖,B轮VC坚持B轮的Pre money为500万美金(低于A轮的Post money),B轮VC投入300万美金,Post money为800万美金,B轮投资人还要求给未来团队留10%的期权,而A轮VC投资条款约定在B轮融资时如果股价低于A轮的Post money,A轮VC不稀释(!!)……兵临城下,公司危在旦夕,黄马克和他的团队不得不拍板同意B轮VC的条件。

B轮投资后公司(员工持股计划执行后)的股权结构

股东名单 股权类型 股份 股份比例

黄马克/CEO 普通股 3,991,597 7.07%

刘比尔/CTO 普通股 2,394,958 4.24%

周赖利/COO 普通股 1,596,639 2.83%

员工持股 普通股 3,781,513 6.70%

A轮投资人 优先股(次级) 14,117,647 25.00%

A轮投资人 优先股(次级) 9,411,765 16.67%

B轮投资人 优先股 21,176,471 37.5%

——————————————————-

合计: 56,470,588 100.00%

谢天谢地,公司还算命大,B轮VC的钱终于在A轮的钱烧光的那一天进来了,公司香火不断!

请注意,A轮投资人的优先股现在被注明是“次级”。这是行规,最后进来的VC的优先级别是最高的,上一轮VC是“次级”优先,再上一轮的是“次次级”。这些优先的级别在发生利益的时候就会生效,比如万一公司要清盘,破盆破罐破家当变卖回来的钱,最优先的VC先拿,有多的话,次级优先的VC拿,还有多,次次级VC拿,最后剩下的,才是创业者的;还有一点:上表中A轮投资人的股份数比A轮时增加了很多,那是因为A轮有“反稀释”条款,为了维持B轮的“股份拼骨图”的百分比,必须要么让创业者拿出一部分自己的股份给A轮VC,或者让A轮VC以0成本再获得一部分股份,这里选用的是A轮VC以0成本增获股份的方法……想想心酸,创业者冲锋陷阵打江山,分利益时是最后一个,第一个支持创业者的早期VC,同样,分利的优先级别很低,相反的,IPO之前杀将进来的VC,反而优先级别最高,坐等摘桃子吃,唉,兴许就是这个原因,很少有人愿意来支持早期的创业团队,大家都想搭乘你的IPO过山车,但愿这些优先的级别,不会造就出一帮帮的阶级敌人哇!

B轮融资完成之后,黄马克和他的团队吸取前车之鉴,调整策略,专注再专注,新进来的钱一分不乱花,该出手时才出手,全都用在了刀口上,结果一炮打响!这时候VC们一个个终于都看清了机会,人人都愿意掏钱出来支持黄马克把公司迅速做大,于是公司的董事会决定融C轮,这轮融资以后公司差不多就得准备上市了。C轮融资谈判特顺利,估值也很高,6个X,即B轮Post money的6倍,以4800万元的Pre money(800 x 6 = 4800)融了3000万元美金。当然,C轮的投资人也提出要增强核心的上市团队,比如引进了CFO、销售副总裁…期权池又增加了5%。

C轮投资后公司(员工持股计划执行后)的股权结构

股东名单 股权类型 股份 股份比例

黄马克/CEO 普通股 3,991,597 4.13%

刘比尔/CTO 普通股 2,394,958 2.48%

周赖利/COO 普通股 1,596,639 1.65%

员工持股 普通股 6,753,649 6.99%

A轮投资人 优先股(次级) 14,117,647 14.62%

A轮投资人 优先股(次级) 9,411,765 9.74%

B轮投资人 优先股 21,176,471 21.92%

C轮投资人 优先股 37,151,703 38.46%

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

合计: 96,594,427 100.00%

经受过考验的优秀团队、明确的目标、外加充足的资本,黄马克公司如虎添翼,IPO上市计划提到了议事日程之中,选定了上市的地点、承销商,确定了路演的行程和策略,嘿嘿,蒸蒸日上的公司就是令人心旷神怡,更何况,上市之后公司里还要冒出一大串百万富翁……咱这就来给他们算算身价,瞅瞅他们未来的皮夹有多厚,假设这家公司拿出了20%的股份去上市,每股价格8美元:

IPO时的股权结构

股东名单 股权类型 股份 股份比例

黄马克/CEO 普通股 3,991,597 3.31%

刘比尔/CTO 普通股 2,394,958 1.98%

周赖利/COO 普通股 1,596,639 1.32%

员工持股 普通股 6,753,649 5.59%

A轮投资人 普通股 14,117,647 11.69%

A轮投资人 普通股 9,411,765 7.79%

B轮投资人 普通股 21,176,471 17.54%

C轮投资人 普通股 37,151,703 30.77%

上市新发行股 普通股 24,148,607 20.00%

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

合计: 120,743,034 100.00%

注意到没有,上市了,公司的股票优先级取消了,大家统统变成了“普通股”,因为公司上市了,创业时期的那些风险防范就没有必要了,VC们想的是尽快套现,把身上穿旧的衣服脱下来,扔给二级市场上让股民们去抢着穿去吧。

看到了吧,创业真好,黄马克、刘比尔、周赖利身价都上千万美金了,这辈子全搞定了,吃喝是永远不用愁了!不过黄马克的团队要是在B轮的时候不栽跟斗,不被A轮、B轮VC活活啃掉好几根肋骨,他们现在的身价可能要翻番了……不管怎样,黄马克还是好样儿的,创业的弟兄们好好向他学习吧!

几点补充说明:

1. 早期创业公司的企业价值是很难估计的,VC们也无非根据持股比例和投入资金倒算出来几个数字而已,并不意味公司真正“值”多少钱。但是,早期公司的股份是很宝贵的,创业者要珍惜。

2. 创业公司的成长,反映在股价的升值。升值越快,融资时稀释就越少。当然,公司能很好地精打细算省钱,融资次数越少,稀释也越小。举个例子,创业初期花掉3万块钱,等于差不多1%的公司股份,到了C轮以后,3万块钱连0.000005%都不到。所以,千万不要烧钱,能不找VC,最好别去找。创业者骨头要硬!

3. 以上IPO的估值是简单化了的,没有考虑公司的收入和利润规模。

4. 创业公司的股权在上市前是不流通的,估值也讲不清楚,没有一个市场价格,给员工股份时如果用百分比,谁都说不清这25%、15%、1%. 0.1%……到底值多少钱。给他们股数吧,不管给了500股、5000股、50000股,你可以建议人家思考:等公司上市的时候股价如果是10 元,简单一算就知道这些股份那时候大概会值多少钱。

5. 前文提到“拖个跟投VC进来是有战略考虑的一步棋子”,解释一下:

早期的VC投资和创业一样,切忌香火断了,只要公司能活着,就有希望存在。所以早期VC的一个重要任务是能把下一轮的VC引入公司。

也许你以为当你把A轮VC的钱烧光了,可以让A轮VC再砸点儿进来吧?不行,这回A轮VC再掏钱可没那么简单,VC是不能随便因为你钱用光了,再给你一笔花去吧,那是违规的!具体地说,如果A轮是我投的,这轮的估值就是我认定的,那么B轮我就不能自己定价然后自己又放一笔钱进去。我必须找到第三方的新的领投投资人来认价,在B轮中我不能领投但可以跟投。这是VC行业的规矩,不然的话,我可以A轮定价500万,B轮翻十倍变成5000万,C轮再来十倍成5个亿……这是“内部交易”,不代表这家公司的“市场价格”。所以,VC投资的每一轮融资,都必须由新的第三方VC来认价。

一是因为要“香火不断”,二是因为未来融资的“定价权”,所以我要在A轮的时候埋下伏笔,邀请一个VC跟着投一点儿钱,买张票跟我一起看你演戏,要是你演得不错,下场戏的票价说不定这位VC愿意来定,而我可以轻轻松松地跟投,接着看你继续表演。

为清晰展示每一轮股份/期权的脉络,特制Excel表格如下:

(图表来源:互联网分析师钱皓的微博)

互联网大公司体制内创新的重重阻力 从大公司的管理体制和考核制度等多个角度阐述,大公司体制内创新的困境,这也是国内多数公司面临的问题,本篇分析了阻碍体制内创新的原因,也给出了如何推进公司体制内的创新项目开展

Robbin Fan(范凯)写的文章<<robbin谈管理:大公司体制内创新的困境>>,从大公司的管理体制和考核制度等多个角度阐述,大公司体制内创新的困境,这也是国内多数公司面临的问题,本篇分析了阻碍体制内创新的原因,也给出了如何推进公司体制内的创新项目开展,非常值得大家阅读,特转此文与君共赏!

周末在家,随手翻看了一点吴军老师的《浪潮之巅》这本书。去年这本书上市之后我从头到尾阅读了一遍,在《浪潮之巅》中吴军老师历数了IT行业公司的兴衰发 展史,提出了一个令人印象深刻的“基因决定论”,即由于公司基因的影响,当一家大公司想要转型占领新的领域,做出颠覆性创新产品的时候,往往会败得很惨。 这种例子其实很多,摩托罗拉,诺基亚,英特尔,微软不一而足,大公司体制内创新的困境已经成为常态。杰克韦尔奇在谈到这个问题的时候,曾经说过:“管理一 条产值为5万美元的新生产线的第一年,要比管理一个销售额为5亿美元的企业的第20年更为困难”。他在《Winning》这本书里面具体提到3条原因:

1、公司对创新项目的投入不足,特别是业务人员投入不足
2、公司对创新项目的前景和重要性宣传太少,反而保持秘而不宣
3、公司限制了创新项目的自主权。

所以一般大公司体制内立项的新项目失败的概率是非常高的。我和各大互联网公司的朋友聊天,也听到很多私下的爆料,感叹在大公司里面推动产品创新之 艰难。在我们互联网行业,往往大公司做创新产品做不过创业公司,大公司里面做失败的产品可以说是累累白骨,前网易相册产品总监纯银同学曾经写过一篇博客, 谈到这个问题:《大平台的局限》,分析相当深刻。我对这个问题也有一些补充性思考:

 

一、大公司严密的制度性约束扼杀了创新的可能性

大公司的人事制度,财务制度,公司文化,业绩考核方方面面往往是非常严格的,例如详细到公司考勤,请假,调休,财务报销,请款流程,人员招聘,小 到公司运维规定方面能不能看视频网站,能不能安装QQ聊天软件,严格的甚至还有不能上网的等等。这些详细的,繁苛的制度以及公司文化对于管理一家几百上千 人的公司可能是非常必要的,但是这样的环境往往会扼杀创新的团队和员工。

 

案例1、某个负担公司创新项目使命的部门给员工开出了超高的薪资和豪华的办公室:有洗澡间,有卧室,有免费的饮料冷饮,有家庭影院等等。但唯独考 勤制度及其严格,每天早晚打卡按手印,如果迟到要扣工资,招聘流程及其漫长,入职一个人往往要好几个月。某牛人抱着希望而去,但深受考勤之苦,经常迟到, 因为工资非常高,考勤罚款也不过九牛一毛,但作为一个对自己要求很高的人,整天被罚款感觉非常糟糕,不到一年离开了。另一牛人做项目需要配置一个UI人 员,但是入职流程长达半年,等到黄花菜都凉了,最后等UI入职的时候,该牛人已经无法忍受而辞职了。

 

分析这个案例,严格的考勤错了吗?谨慎的招聘错了吗?对大公司来说都没错,这些都是应该的,但是对于创新型团队这样的制度则是毁灭性的。

 

案例2、还是说说考勤,某工程师特别有责任心,恰逢公司项目比较忙,周末加班了很多次,累积了很多天的调休假,但是一直没空休假。这一忙就是好几 个月,直到有一天人事部门提醒他,你的调休快要过期了,你再不行使,就全部作废。工程师怒了,心想,我给公司加班加点干活,连休假都不舍得,结果到最后要 废掉我的带薪假,我TMD啥都不管了,从接到通知的第二天开始休了一周多假,期间的工作当然是只能搁置。

 

分析这个案例,人事的制度错了吗?似乎没错,调休假不能没有行使期限吧,但是结果呢?让一贯有责任心的工程师不得不暂时放弃自己的责任心。如果团 队当中的每个人都不得不精打细算自己的行为,以便于在严格的制度下实现自身利益最大化,你如何能够要求这样的团队做出创新和突破?

 

案例3、某个主管手下有一名优秀的设计师,一天设计师来请假,想请假两个月进行长途旅游。主管一想,虽然请长假有点不舍,但是这个人是优秀人才 啊,也在我手下任劳任怨干了一年了;再说搞设计的请假旅游充电很合理啊,这样才能不断有设计灵感啊;况且最近工作不忙。人家乔布斯的Pixar制作《玩具 总动员》的时候,创作人员没灵感了,老乔硬是给创作组放了半年的带薪长假,让他们找灵感,咱做不到半年带薪假,但批准两个月停薪假期还是没问题的嘛。事情 报到人事部门给挡回来了,人事部门不批。主管说,公司其他部门也有请长假的,他批为什么我不批。人事说,以后都不准了,不能开此例,否则大家都效仿如何 办?唯一通融办法就是让设计师自己辞职,等两个月回来后重新录用。主管无奈,只能做设计师的思想工作,告诉他只能这样办了,唯一的损失就是年终奖会少发, 因为会按照新入职员工计算工龄。设计师同意了,办理了离职手续。虽然办了离职手续,但毕竟不是真的离职,只是变现的休假两个月,主管想保留设计师所有公司 帐号权限和公司邮箱,便于工作联系。但被人事拒绝了,人事部门提出:此人已经办理离职,法律上和公司没有任何关系了,用公司帐号做出了不利于公司的事情怎 么办?所以关闭了所有权限,删除了所有帐号和邮箱。这样做也等于彻底断了设计师再回公司的可能性了。

 

分析这个案例,人事做错了吗?站在维护公司制度的立场上,站在防止公司出现法律纠纷的立场上,人事没错,但是结果就是一个优秀设计师的流失。

 

案例4、再说说报销制度,越是大公司报销制度越严格。有的公司研发部门有购书的预算,但是员工从来不报销,理由就是报销太麻烦,还不如自己买书; 有的公司市内出差要详细填写从那里去那里,办理了什么事情,填写不出来?那对不起不能报销;有的公司因为业务需要购买海外在线服务,员工用自己信用卡支付 了,到了财务报销被卡住了,你没有发票啊,对不起不能报销,想报销自己去找发票冲吧。这些其实还不算什么,某公司内部使用的ERP系统财务模块报销,报销 工作流有几十步流程,让所有人崩溃,很多人干脆放弃报销;最夸张的例子是某公司高层,因为实在厌烦公司报销流程,干脆所有差旅费用全部自掏腰包,不讨那没 趣的事情,又因为品德高尚,经常团队聚餐自掏腰包,给团队买各种开发测试机自掏腰包。

分析这些个案例,财务做错了吗?绝对没错。公司财务制度不严谨,一定会出大问题。但是在这样严格的财务制度下,创业创新团队怎么生存?他们因为惧 怕报销流程而尽量避免应该去做的市场出差工作,因为惧怕报销流程而尽量避免采购应该体验的海外在线服务,研发测试机器。而那个品德高尚的公司高层,其做法 也是备受争议的,何况他能这样做的前提也是因为具备了足够的经济实力做保障,你能要求普通薪水的员工做到这些吗?

 

凡此种种,类似这样的案例简直数不胜数,每个大公司里面每天都在上演。每个制度都有其合理性,甚至必要性。但是创新型团队是无法在大公司文化下生存下来的。因为大公司的制度会事实上淘汰那些有创新渴望,却无法严丝合缝符合制度化要求的员工。当你对员工的要求是制度化的时候,你只能得到适应制度化工作模式的员工,而无法得到适应创新要求的员工;而当你行使着制度化的管理方式,却要求这些适应制度化管理的员工做出创新项目的时候,其实是南辕北辙的。

 

总之,大公司做创新项目,最喜欢砸人砸钱,最忽视的就是创新文化制度的建设,没有适合创新团队的生存土壤,光靠砸钱砸人,永远做不出来颠覆性创新产品,创新需要适合创新的土壤。

 

二、在大公司,工作的专注度永远是稀缺资源

我以前自己创业的时候,只需要做好一个产品,追求一个目标,我那个时候工作并不忙,每天有大把的时间思考怎样把产品打磨好,怎样把社区运营好,做 事情的专注度非常高,而高度专注和长久的坚持才是把事情做成功最基本的条件。现在在中小型互联网公司负责管理60个人的部门,每天事情多的忙不过来,我现 在分管网站产品,研发,社区运营,系统运维,以及网站客服和内容审核等职能团队,每天处理部门人事,行政,管理,业务,绩效,招聘等等事情就要至少忙半 天,此外还有公司管理层会议,部门内部各职能团队任务讨论,产品会议,间或客户或者合作伙伴上门拜访还要出台接待,以及配合其他部门工作,部门协调,凡此 种种,占据了工作时间的90%以上。现在回想当年自己创业每天挥霍大把的时间琢磨产品上怎么雕花,简直就是奢侈的浪费啊。

 

而在大公司里面的那些产品经理和工程师们,比我就可怜的多了,某公司产品经理戏称公司文化就是会议文化,每天各个部门拉到一起从早到晚开会,从上 班开到下班,工程师想写点代码都得晚餐以后开始写。个人的工作时间能被用在创新产品上是非常稀缺的,在这种情况下,怎么可能做出创新产品呢?

 

三、大公司做创新项目资源往往严重投入不足

这个观点看似有点矛盾,我前面不是刚说大公司最喜欢干的事情就是砸钱砸人吗?怎么叫做资源严重投入不足呢?其实我前面提到纯银的博客文章里面已经 做了很详细的说明了,这里只想补充说明几句:一个项目的成功所需要动用的资源,不是简单的砸钱和砸人的问题,而是需要所有相关职能部门紧密配合起来为共同 的目标而努力投入资源。光你自己这个项目组砸几个产品设计,砸几个研发,砸几个运营那不叫资源投入,你总不能自己配市场人员,自己配销售人员吧,项目的成 功最终也需要依赖其他部门的资源配合。我有一个简单的论断:跨部门调用资源永远是低效率的,凡是体制内创新,如果不是老板亲自调动各个部门资源配合,绝对 不能指望跨部门资源配合产生创新型产品,如果团队内部不能配置足够的资源,就无法产生成功的创新型产品。

 

基于以上三点原因,大公司的体制内创新往往是非常困难的,中外公司,概莫能外。当然,体制内创新并非没有成功案例,乔布斯的苹果公司就是最典型的 大公司体制创新的典范,我个人即便不从产品创新角度,仅从管理的角度也非常佩服乔布斯,因为乔布斯的苹果公司挑战并且超越了很多大公司的管理极限。苹果公 司之所以能够一次又一次的不断复制着体制内创新的奇迹,是因为苹果公司本质上是一家大型创业公司,而这一点是其他公司难以达到的状态。

 

大公司体制内创新也并非一定会失败,就拿我们国内互联网行业,就不乏成功的典范,例如:搜狐的搜狗输入法和现在的搜狗公司,新浪的微博产品,腾讯 的微信产品,淘宝早期孵化过程。我们观察这些成功案例有一个共同的相似点:都经历了长期的体制外孵化或者成长期。搜狐时代的搜狗输入法叫好不叫座,分拆搜 狗公司以后,实现了真正的腾飞;新浪的微博最早是广州的团队做的产品,具备影响力以后才搬到北京总部;腾讯的微信则是远离深圳总部的广州研究院做出来的产 品;而淘宝早期秘密成立团队在湖畔花园重新创业则被写成了神话。

 

杰克韦尔奇对于大公司体制内创新提出了自己的看法:

1、首先做大笔投入,把最好,最有进取心,最有活力的人放到新业务的领导岗位上。创新团队必须有车库创业精神。
2、夸大宣传创新项目的潜力和重要性,创新项目的报告层次必须高很多,甚至直接向CEO负责,在CEO的日程表上占据特殊的位置。
3、给予自由度,允许犯错误;让创新项目自己成熟起来。

 

我觉得针对我看到的很多国内互联网大公司的情况,要想做到体制内创新,需要做出许多改变:

一、制度性松绑,搞“经济特区”制度

中国的改革开放成功是从海南,深圳等经济特区开始的。设立经济特区,进行政策搞活,最终盘活了整个中国的经济。在大公司进行体制内创新也是一样, 要整个公司制度性转变是不可能的,但是我们可以搞“经济特区”制度,对创新团队进行制度性松绑,例如:取消经济特区的上下班打卡考勤制度,实行弹性工作 制;给经济特区独立的人事权限,可以自由招聘,自己设定请假调休制度;宽松的财务报销制度;取消严格的绩效考核制度,代替以整个团队的项目目标等等。总 之,必须给“经济特区”特殊的政策,彻底的制度松绑,否则就无法培养出来适应创新要求的团队。

 

二、体制外孵化

很多成功的项目都是体制外孵化的结果,不说上面几个成功案例,我最近看空中网的制作的iOS游戏口袋战争也很成功,其iOS游戏开发部门也不是在 北京,而是设在厦门,进行体制外孵化的。只有远离体制,才能获得充分的自由和制度的松绑,才能创造最好的创新环境。特别是作为体制外孵化,团队成员的工作 专注度是高度集中的,不会受到各种事务性事情和部门工作协调,以及各种不必要会议的干扰,对产品的专注才有可能成功。

 

三、独立的,更优厚的激励制度

针对创新团队,不能采用和整个公司一致的奖金激励制度,那只不过是常规性工作达标的奖励。针对创新项目,必须有别于公司整体奖金制度之外的奖励机 制,让团队成员感受到更加强烈的动力和追求项目成功的渴望。如果没有独立的奖励制度,和整个公司一视同仁,那么很多人会想,我就算拼了命做出来了成功的创 新项目,最终还是和其他部门按部就班循规蹈矩的员工拿一样的奖金,那我凭什么要玩命呢?所以必须把项目的成功和优厚的奖金挂钩起来,和其他部门区别开来, 才能激励创新团队员工比一般的员工更加玩命。

 

四、精兵强将,挑选适合创新的人才

可以这么说,大多数大公司的员工都不是合适做创新项目的人才。创新项目要成功,必须招聘真正适合创新,有创业精神,渴望成功,渴望证明自己的员工,组建这样的团队,才有可能成功。而不是以为简单的砸钱砸人就万事大吉了。

 

五、不遗余力的支持和很高的容忍度,适当的隔离

创新团队需要不断的试错,需要时间来积累和孵化项目,因此作为老板来说,必须不遗余力的支持创新团队,就像杰克韦尔奇说的那样,极力鼓吹团队,给团队很高的容忍度。除此之外,还需要适当的隔离,就像天使投资人对待投资的团队那样,不能事事干预,给团队充分的自由度。

原文地址:http://robbin.iteye.com/blog/1515588

Facebook上市的28个事实:市值超越亚马逊

北京时间5月18日早间消息,Facebook将于5月18日上市。以每股38美元的发行价计算,Facebook市值将超过1000亿美元。不过,Facebook及其CEO马克·扎克伯格(Mark Zuckerberg)的一些情况仍不被外界广泛了解。美国科技博客BusinessInsider列出了Facebook IPO(首次公开招股)中不为人知的28个事实。

1.Facebook上市后的市值将超过eBay(微博)、雅虎、Groupon、LinkedIn、Netflix、IAC、AOL、Zynga和Pandora的总和。

2.Facebook上市后的市值将略微超过亚马逊(微博)。

3.Facebook联合创始人埃杜阿多·萨维林(Eduardo Saverin)已经放弃了美国国籍。

4.根据同事的说法,扎克伯格最出众的才能之一是解雇他人的能力。

5.扎克伯格拥有Facebook近60%的投票权。

6.扎克伯格曾拒绝了维亚康姆的收购提议。

7.扎克伯格曾同意过雅虎的收购提议,但在雅虎下调收购报价之后交易流产。当时雅虎CEO还是特里·塞梅尔(Terry Semel)。

8.支付业务对Facebook总营收的贡献约为15%。

9.微软CEO史蒂夫·鲍尔默(Steve Ballmer)曾提出收购Facebook,在没有成功后对Facebook投资2.4亿美元。

10.在谢丽尔·桑德伯格(Sheryl Sandberg)出任Facebook COO之前,Facebook还曾面试过雅虎前高管艾伦·西米诺夫(Ellen Siminoff)、苹果资深人士巴德·科里甘(Bud Colligan)和OpenTable前CEO杰夫·乔丹(Jeff Jordan)等人选。

11.史蒂夫·乔布斯(Steve Jobs)曾邀请Facebook在2008年的苹果全球开发者大会(WWDC)上演示其iPhone应用。

12.扎克伯格本人没有出面,而是派遣了一名工程师和一名营销经理进行演示。效果不是很好,而乔布斯最终取消了这一活动。

13.在与华尔街银行家会面时,扎克伯格穿着连帽衫。

14.扎克伯格于2005年参加了“CEO课程”。

15.扎克伯格是美剧《欢乐合唱团》的粉丝。

16.一名接近Facebook的消息人士称,扎克伯格是黑莓(微博)的粉丝,这也是Facebook移动业务表现不佳的原因之一。

17.扎克伯格直到2010年才放弃他的黑莓手机。

18.扎克伯格希望避免无人驾驶汽车等奇怪的边缘项目,但这也令Facebook员工感到无趣。

19.扎克伯格曾承诺今年每天都编写代码。

20.在没有咨询董事会的情况下,扎克伯格就完成了10亿美元收购Instagram的交易。

21.在美国次贷危机发生时,扎克伯格开始寻找海外投资。

22.Facebook工程师最初计划将“Like”按钮命名为“Awesome”按钮。

23.谷歌在上市时的估值仅为Facebook的1/4。

24.美国联邦贸易委员会(FTC)于2009年对Facebook调整隐私政策的做法进行了调查。Facebook随后同意,在未来20年中,允许FTC对Facebook的隐私政策进行审查。

25.在Facebook成立后的第一个夏天,扎克伯格和他的家人花费了8.5万美元,维持公司运转。

26.陈仕俊在创立YouTube之前,曾在Facebook工作过几周。

27.Facebook曾经名为theFacebook。公司首任总裁希恩·帕克(Sean Parker)帮助Facebook以20万美元的价格买下了Facebook.com的域名。

28.帕克还说服扎克伯格在网站上添加照片分享功能。扎克伯格最初曾拒绝这一功能,但这目前已是Facebook最流行的功能。

国外创意

谷歌艺术数据团队队长,Aaron Koblin的创意,ebay曾做过一个网站,只要通过两美元就可以在网站上画绵羊,由此想到把这个功能做成网站,汇总所有的涂鸦,生成录像,http://www.aaronkoblin.com/

InnoDB和MyISAM区别总结

InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定。基本的差别为:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持已经外部键等高级数据库功能。
MyIASM是IASM表的新版本,有如下扩展:
·二进制层次的可移植性。
·NULL列索引。
·对变长行比ISAM表有更少的碎片。
·支持大文件。
·更好的索引压缩。
·更好的键吗统计分布。
·更好和更快的auto_increment处理。
以下是一些细节和具体实现的差别:
◆1.InnoDB不支持FULLTEXT类型的索引。
◆2.InnoDB 中不保存表的具体行数,也就是说,执行select count(*) from table时,InnoDB要扫描一遍整个表来计算有多少行,但是MyISAM只要简单的读出保存好的行数即可。注意的是,当count(*)语句包含 where条件时,两种表的操作是一样的。
◆3.对于AUTO_INCREMENT类型的字段,InnoDB中必须包含只有该字段的索引,但是在MyISAM表中,可以和其他字段一起建立联合索引。
◆4.DELETE FROM table时,InnoDB不会重新建立表,而是一行一行的删除。
◆5.LOAD TABLE FROM MASTER操作对InnoDB是不起作用的,解决方法是首先把InnoDB表改成MyISAM表,导入数据后再改成InnoDB表,但是对于使用的额外的InnoDB特性(例如外键)的表不适用。
另外,InnoDB表的行锁也不是绝对的,假如在执行一个SQL语句时MySQL不能确定要扫描的范围,InnoDB表同样会锁全表,例如update table set num=1 where name like “%aaa%”
综上所述,任何一种表都不是万能的,只有恰当的针对业务类型来选择合适的表类型,才能最大的发挥MySQL的性能优势。

mobile web开发学习记录

公司要开发一个手机web版的软件,我从零起步开始接触HTML5、css3、jquerymobile、phoneGap、sencha touch。。。

没人问,没人指导,只能自己在网上一个个查找,找实例,找文档,这样的方式很能锻炼一个人,提升一个人的自学能力。

有了初步的了解后,随之而来的便是确定当前项目适合哪种技术组合。选择一个组合,将框架搭起来。准备好各种API文档,确定需求,然后技术架构,之后变式摸着石头过河式的借助文档开发了。

看到了好几个不错的英文技术站,比如jquerymobile的官方文档,很想仔细慢慢的把它看完,对自己英文也能有所提高,但是时间不等人,项目很快要进行了。只能先下个熟悉的中文文档。

但是一定不要放过这次机会,在这里记下来,有时间一定要回过头来将英文文档翻译过来!!

come on!

堕落的这段时间已经过去了,雄起吧!管他妈的社会怎样,管他妈的别人怎样,必须要回到自己的生活轨道上来了,陈星要回来了!!!
全心全意做好这个手机版吧!
我还是以前的我!那个有激情有信心敢做敢当的我!!!
做好自己,管别人草鸡巴蛋呢!

你应当了解的5个CSS3新技术 –彬Go

1:基本标记

css3-教程

在我们开始这个教程之前,先来创建整个教程都要使用的基本标记。

我们的xHTML需要一下div元素:

  • #round, 使用CSS3代码实现圆角.
  • #indie, 应用个别的几个圆角.
  • #opacity, 展示新的CSS3实现不透明度的方式.
  • #shadow,展示不使用Photoshop的情况下,使用CSS3来实现阴影效果.
  • #resize, 展示如何使用某种CSS来实现重设大小的效果.

综上所述,我们的xHTML应该是这样的:

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns=”http://www.w3.org/1999/xhtml”>
<head>
< meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />
< title>An Introduction to CSS3; A Nettuts Tutorial</title>
< link href=”style.css” rel=”stylesheet” type=”text/css” />
< /head>
< body>
< div id=”wrapper”>
<div id=”round”> </div>
< div id=”indie”> </div>
< div id=”opacity”> </div>
< div id=”shadow”> </div>
< div id=”resize”>
<img src=”image.jpg” alt=”resizable image” width=”200″ height=”200″>
< /div>
< /div>
< /body>
< /html>

下面来创建基本CSS文件:

body    {
background-color: #fff;
}

#wrapper {
width: 100%;
height: 100%;
}

div {
width: 300px;
height: 300px;
margin: 10px;
float: left;
}

正如你上面看到的,我们给每个div元素300px的宽和高,并让它们向左浮动,整个页面的div都留给我们在后面的工作中添加样式。

2:圆角

css3-特性

目前而言,创建圆角的方法有很多,但都很麻烦。最常用的方法:首先,你要创建圆角的图片;然后,你要创建很多html元素并使用背景图像的方式显示圆角。具体流程你我都很清楚。

这个问题将在CSS3中很简单的解决掉,那就是叫做“border-radius”的属性。我们先创建一个黑色的div元素并给他设置黑色的边框。边框就是要实现“border-radius”属性效果的前提。

像这样:

#round {
background-color: #000;
border: 1px solid #000;
}

现在你已经创建了div元素,它看起来和你预期的样子一样,300px款和高有楞有角且是黑色的。下面我们来添加实现圆角的代码,它是如此的简洁,仅仅需要两行代码。

#round {
background-color: #000;
border: 1px solid #000;
-moz-border-radius: 10px;
-webkit-border-radius: 10px;
}

在这里,我们添加了两行类似的代码,-moz-适用于Firefox浏览器,而-webkit-则是用于Safari/Chrome浏览器。

注:目前为止IE浏览器不支持border-radius属性,所以如果想让IE也有圆角效果,那么就要单独添加圆角了。

border-radius这个属性直译过来是边框半径的意思,就如同Photoshop一样,它的值越大,圆角也就越大。

3:个别的圆角

css3-技巧

如果按照过去的习惯做法,会浪费你很多时间,现在CSS3能快速解决!

我们现在只想让div的右上和右下是圆角,那么仅需稍作修改:

#indie {
background-color: #000;
border: 1px solid #000;
-moz-border-radius-topright: 10px;
-moz-border-radius-bottomright: 10px;
-webkit-border-top-left-radius: 10px;
-webkit-border-bottom-left-radius: 10px;
}

试想一下这种做法会用在网页中的什么元素呢?对!就是标签式的导航按钮!

4:以CSS3的方式修改不透明度

css3-教程

现在你可以按惯例编写几行代码来实现不透明度的效果(hack)。不过CSS3简化了这个流程。

这行代码很好记,仅仅是 “opacity: value;”:

#opacity {
background-color: #000;
opacity: 0.3;
}

5:阴影效果

css3-教程

实现阴影也有很多方法,最常用的就是使用Photoshop制作成阴影图片,然后应用到背景属性中。但CSS3让你的工作更有效率,不幸的是,目前只有Safari和Chrome支持这个新特性。

仅仅需要一行代码,不过它有4个不同的值:

-webkit-box-shadow: 3px 5px 10px #ccc;

下面我来解释一下这四个值都代表什么,第一个3px是指定阴影与div元素之间的水平(横向)距离,第二个5px指的是阴影与div之间的垂直(纵向)距离,第三个10px指的是阴影的模糊度(类似于photoshop中的羽化),值越大越细腻。最后的值不说大家也知道,就是阴影的颜色。

我们最终阴影效果代码;

#shadow {
background-color: #fff;
border: 1px solid #000;
-webkit-box-shadow: 3px 5px 10px #ccc;
}

正如你看到的,我们个这个div设置了白色的背景,黑色的边框和亮灰色的阴影。

6:调整大小

css3-教程

在最新版本的CSS中,调整元素的尺寸已经成为可能(不过目前仅Safari支持)

使用这个代码以后,我们的元素的右下角会出现一个小三角以提示用户这个元素是可以调整尺寸的。代码依然很简单,可以说仅需要一行代码,当然你还可以配合使用一些曾经使用过的属性,比如”max-width”, “max-height”, “min-width”和 “min-height”.

#resize {
background-color: #fff;
border: 1px solid #000;
resize: both;
overflow: auto;
}

在这里主要说一下resize和overflow属性,resize:both;的意思就是所有边都可以调整尺寸,它的值还有horizontalvertical,顾名思义,就是横向和纵向。而overflow是为了配合resize工作的,在这里使用auto.

总结

css3-教程

怎么样,你在这篇文章中有没有什么收获呢?虽然现在仅有很少数的浏览器支持CSS3,但不可否认的是CSS3的确会为我们的工作节省更多的时间。如果你对渐进增强有所了解和认识的话,我想你会欣然接受CSS3这个强大的新版本的。不要再把你的时间都花在IE6上了,那样你只能会是过时的前端开发工程师。

一起感受HTML5和CSS3的能量 –彬Go

Web设计师可以使用HTML4和CSS2.1完成一些很酷的东西。我们可以在不使用陈旧的基于table布局的基础上完成文档逻辑结构并创建内容丰富的网站。我们可以在不使用内联<font>和<br>标签的基础上对网站添加漂亮而细腻的风格样式。事实上,我们目前的设计能力已经让我们远离了那个可怕的浏览器战争时代、专有协议和那些充满闪动、滚动和闪烁的丑陋网页。
虽然我们现在已经普遍使用了HTML4和CSS2.1,但是我们还可以做得更好!我们可以重组我们代码的结构并能让我们的页面代码更富有语义化特性。我们可以缩减带给页面美丽外观样式代码量并让他们有更高的可扩展性。现在,HTML5和CSS3正跃跃欲试的等待大家,下面让我们来看看他们是否真的能让我们的设计提升到下一个高度吧…

您还可以参考以下CSS3相关教程及资源:
提升你设计水平的CSS3新技术
学无止境的CSS(xHTML+CSS技巧教程资源大全)

目前最全的浏览器/CSS选择器兼容性总结
你应当了解的5个CSS3新技术

跟<div>说再见,欢迎语义化标签

曾经,设计师们经常会跟频繁使用基于table的没有任何语义的布局。不过最终还是要感谢像Jeffrey Zeldman和Eric Meyer这样的思想革新者,聪明的设计师们慢慢的接受了相对更语义化的<div>布局替代了table布局,并且开始调用外部样式表。但不幸的是,复杂的网页设计需要大量不同的标签结构代码,我们把它叫做“<div>-soup” 综合症。也许你很熟悉下面的代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<div id=”news”>
<div class=”section”>
<div class=”article”>
<div class=”header”>
<h1>Div Soup Demonstration</h1>
<p>Posted on July 11th, 2009</p>
</div>
<div class=”content”>
<p>Lorem ipsum text blah blah blah.</p>
<p>Lorem ipsum text blah blah blah.</p>
<p>Lorem ipsum text blah blah blah.</p>
</div>
<div class=”footer”>
<p>Tags: HMTL, code, demo</p>
</div>
</div>
<div class=”aside”>
<div class=”header”>
<h1>Tangential Information</h1>
</div>
<div class=”content”>
<p>Lorem ipsum text blah blah blah.</p>
<p>Lorem ipsum text blah blah blah.</p>
<p>Lorem ipsum text blah blah blah.</p>
</div>
<div class=”footer”>
<p>Tags: HMTL, code, demo</p>
</div>
</div>
</div>
</div>

尽管这有些勉强,但上面这个实例还是可以说明使用HTML4对一个复杂的设计进行代码化后依然过于臃肿(其实xHTML1.1也不过如此)。不过值得激动的是,HTML5解决“<div>-soup” 综合症并带给我们一套新的结构化元素。这些新的HTML5元素富有更细致的语义从而代替了那些毫无语义的<div>标签,并同时为CSS的调用提供了”自然”的CSS钩子。下面是HTML5的解决方案实例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<section>
<section>
<article>
<header>
<h1>Div Soup Demonstration</h1>
<p>Posted on July 11th, 2009</p>
</header>
<section>
<p>Lorem ipsum text blah blah blah.</p>
<p>Lorem ipsum text blah blah blah.</p>
<p>Lorem ipsum text blah blah blah.</p>
</section>
<footer>
<p>Tags: HMTL, code, demo</p>
</footer>
</article>
<aside>
<header>
<h1>Tangential Information</h1>
</header>
<section>
<p>Lorem ipsum text blah blah blah.</p>
<p>Lorem ipsum text blah blah blah.</p>
<p>Lorem ipsum text blah blah blah.</p>
</section>
<footer>
<p>Tags: HMTL, code, demo</p>
</footer>
</aside>
</section>
</section>

正如我们所见,HTML5可以让我们用很多更语义化的结构化代码标签代替那些大量的无意义的<div>标签。这种语义化的特性不仅提升了我们网页的质量和语义,并且大量减少了曾经代码中用于CSS必须调用的class和id属性。事实上,CSS3也是可以然通过我们忽略掉所有class和id的。

跟class属性说再见,欢迎整洁的标签

结合了富有新的语义化标记的HTML5,CSS3为web设计师们的网页提供了神一般的力量。有了HTML5的能量,我们将得到更多的对文档代码的控制权,有了CSS3的能量,我们的控制权将趋于无穷大!

即使没有那些高级的CSS选择器,我们仍然可以通过强大的HTML5条调用不同的容器而不劳驾class和id这类属性。像以往的DIV布局,我们在css中可能要这样调用:

1
2
3
4
5
6
7
div#news    {}
div.section {}
div.article {}
div.header  {}
div.content {}
div.footer  {}
div.aside   {}

我们再来看看基于HTML5的实例:

1
2
3
4
5
section {}
article {}
header  {}
footer  {}
aside   {}

这是个进步,但仍有一些问题需要解决。在<div>实例中,我们需要通过class或id属性来调用页面中的元素。这种逻辑将允许我们将样式应用到文档中的任何一个元素上,无论是整体还是个体。例如在<div>实例中,.section 和 .content元素很容易定位。但是在HTML5实例中,实际文档中会有很多个section元素。其实我们可以添加一些特定的属性选择器来调用那些不同的section元素,不过谢天谢地,我没现在可以用少量的高级CSS选择器来定位不同的section元素。

不使用class和id定位HTML-5元素

下面让我们来看看如何在不使用class和id的情况下定位HTML5页面元素的一个实例,我们可以使用三种CSS选择器来定位和辨别实例中的元素。如下:

  • 后代选择器:[CSS 2.1]: E F
  • 兄弟选择器:[CSS 2.1]: E + F
  • 子元素选择器:[CSS 2.1]: E > F

下面让我们来看看如何不使用class和id而完成对文档中的那些section元素的定位吧:

定位最外层的<section>元素

考虑到我们的例子并不是一套完整的HTML5代码,所以我们假定在<body>元素下有个<nav>元素与<section>元素是兄弟元素。这样的话,我们就可以向下面代码那样定位最外层的<section>了:

1
body nav+section {}

定位下一个<section>元素
作为最外层<section>元素下的唯一直属子集元素,这个<section>元素也许可以这样定位:

1
section>section {}

定位<article>元素
可以定位<article>元素的方法有很多,不过最简单的方法当然就是后代选择器了:

1
section section article {}

定位<header>、<section>和<footer>元素
这三个元素分别在两个地方都出现过,一是在<article>元素中出现,另一是在<aside>元素中出现。这种差别能让我们轻松定位每个元素。

1
2
3
article header {}
article section {}
article footer {}

或者一起定义:

1
2
3
section section header {}
section section section {}
section section footer {}

到目前为止,我们已经使用CSS2.1选择器排除掉了所有的class和id。那么我们为什么还需要使用CSS3呢?我很高兴你能这么问…

使用CSS3对HTML5元素进行高级定位

虽然我们已经使用CSS2.1选择器排除掉了所有的class和id,显然还会有很多更复杂的情况需要CSS3的高级选择器来解决。让我们通过完成一下的实例来了解一下如何在不使用无用的class和id属性的情况下利用CSS3定位页面元素。

使用一个唯一的日志(post)ID定位所有日志

wordpress提供给我们一种包含了ID的每篇日志的源代码输出。这种信息通常用于导航和/或了解资料的意图,不过CSS3可以利用这些唯一的ID来定义这些日志的样式。当然,你还可以像往常那样为每篇日志添加class=”post”这样的属性,但这就与我们练习的意图相冲突了(再加上它没有一点乐趣所在)。使用”子字符串匹配选择器”,我们就可以像下面这样定位所有日志和它们的不同元素了。

1
2
3
article[id*=post-] {}           /* 定位所有日志 */
article[id*=post-] header h1 {} /* 定位所有日志中的h1标签 */
article[id*=post-] section p {} /* 定位所有日志中的p标签 */

我们仍然可以使用同样的方式定位评论的元素和它们的子元素。

1
2
3
article[id*=comment-] {}           /* 定位所有评论 */
article[id*=comment-] header h1 {} /* 定位所有评论中的h1标签 */
article[id*=comment-] section p {} /* 定位所有评论中的p标签 */

定位一些指定的区域(section)或文章(article)
有很多博客的日志量和评论量都相当大,HTML 5 会将它们由<section>或<article>元素组成。为了定位哪些指定的<section>或<article>元素,我们就要转而使用强大的“:nth-child”选择器了:

1
2
3
4
5
section:nth-child(1) {} /* 选择第一个 <section> */
article:nth-child(1) {} /* 选择第一个 <article> */

section:nth-child(2) {} /* 选择第二个 <section> */
article:nth-child(2) {} /* 选择第二个 <article> */

同样,我们可以使用“:nth-last-child”选择器定位反序的一些元素。

1
2
3
4
5
section:nth-last-child(1) {} /* 选择最后一个 <section> */
article:nth-last-child(1) {} /* 选择最后一个 <article> */

section:nth-last-child(2) {} /* 选择倒数第二个 <section> */
article:nth-last-child(2) {} /* 选择倒数第二个 <article> */

使用更多的方式选择指定元素
另一种选择HTML5中指定元素(如header、section和footer)的方法就是利用”:only-of-type”选择器的优势。由于这些HTML5元素通常会在很多地方出现不止一次,所以当我们想定位那种在父元素下仅出现过一次的标签时这种方法很方便。例如,我们要选择的是在某

元素中有切仅有的唯一一个

元素,如以下代码: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<section>
<section></section>
<section>
<section>定位这个section元素</section>
</section>
<section>
<section>定位这个section元素</section>
</section>
<section>
<section>但不定位这个section元素</section>
<section>和这个section元素</section>
</section>
<section></section>
</section>

我们可以仅使用以下一行选择器:

1
section>section:only-of-type {}

再次唠叨,你可以固执的为每个元素添加ID属性,但你会失去代码的可扩展性、维护性和绝对简洁的结构与表现相分离。CSS3的确能让我们可快速更方便的定位几乎所有没有ID和class属性的页面元素。
大家如果想了解一下现在的CSS3选择器的浏览器支持情况,可以参阅这篇文章(即时更新):
《目前最全的浏览器/CSS选择器兼容性总结》

总结

我相信随着时间的推进和更多浏览器的支持,HTML5和CSS3将越来越受欢迎,它们将为web设计师们带来更无穷的能量,让我们的web前端更上一个台阶。

 

终于看到HTML5.0和CSS3.0的真面目了

HTML5  Css3
View more presentations from Adam Lu.
Adan Lu做的三个DEMO也很有趣:
1.HTML5的Web Forms 2.0: http://revieweb20.com/Speech/Demo/form-html5.html,需要Opera9.5+ 2.HTML5 DEMO: http://revieweb20.com/Speech/Demo/html5.html,需要Firefox3.5+/Safari4.0+ 3.CSS3 DEMO: http://revieweb20.com/Speech/Demo/css3.html,需要Firefox3.5+/Safari4.0+

总之,HTML5+CSS3让人轻松愉快,我也同意HTML将更流行。

http://www.diybl.com/course/1_web/css/cssjs/20100710/426235.html