关于CSS的小问题

可能在下个月月中,我们部门将会向中国所有的CSS设计人员开放一个网站(目前我还不能透露这个网站的域名),并且同时展开一个CSS大赛。基本上的方式就是只要通过提交一个CSS以及图片组合的模板,就改变该网站的整个外观,以便让更多的开发人员/设计人员了解CSS的强大威力。在这个网站上进行这个赛事是我的创意。

当然这个创意的来源是来自于VisitMix,在这个网站当中有一个子栏目叫ReMix,这其实就是一个CSS大赛,在里面的Gallery当中,有很多网友上传的CSS模板,感兴趣的话,你只需要点击某一个item,就会把整个网站的外观风格完全变一个样子(其实这个创意可能最初来自于CSS禅意花园),记得在去年第一次见到这个网站的时候,感觉非常新奇,那时候就有一个想法,我可不可以把博客堂也做成这个样子?

大家都知道,无论是.Text还是后来的SubText或者BlogEngine,还有DasBlog,其实所使用的模板机制大同小异,除了CSS外,还都使用了类似于Master方式的一个文件来控制所有控件的布局,以便产生更多的风格。有没有可能把这个Master式的控制文件移掉,而只使用CSS或者图片呢?所以我就开始做了一个实验。但至少到现在为止,尚未解决一些关键性难题。以下这些问题我曾经向三位CSS高手求教,答案都是很难实现,或者只能兼容某种浏览器。

好了,以下是我的问题,如果大家有解答,欢迎直接通过邮件与我联系。(joy ^ joycode.com,把^替换为@)。

有以下的HTML架构,希望实现以下三种不同的用户体验,并且兼容IE 6+,Firefox 1.5+以上的浏览器。

这是标题

        

这是主内容

        

                  

                           

  • 主页
  • 目录1
  • 目录2

                  

                  

这是其它内容

          </div>

</div>

这是结尾

第一种布局:

 

Header内容
Sidebar内容(width:200px) Content主内容(Width:Screen.Width-200px);
Footer内容

 

 第二种布局

Header内容
Stats内容(Width:200px) Content(Width:Screen.Width-400px) Sidebar当中除Stats之外的内容(Width:200px)
Footer

 

第三种布局

Header内容
Stats内容(由竖直排列改为水平排列)
Sidebar内容,除Stats之外的内容(width:200px) Content内容(Width:Screen.Width-200px)
Footer内容

为你的博客边栏增加Silverlight内容

开心相信很多朋友都已经建立了自己的博客,而且也从其它网站上寻找各种各样的边栏小插件来丰富自己的博客内容,目前大部分都是使用Javascript或者Flash来构建,而现在,我们可以直接使用Silverlight了。下面介绍一个方案,可以在不占用自己空间,也不编写代码的情况下为您的博客添加相应的媒体内容。

1. 下载Microsoft Expression Media Encoder八月社区预览版以及Silverlight 1.0 RC版

EME(Expression Media Encoder)可以从http://www.microsoft.com/expression上进行下载,请注意,我们下载的Expression Media Encoder,而非Expression Media。然后再到http://www.silverlight.net下载Silverlight 1.0 RC版,以及Silverlight 1.1 Alpha Referesh版本。

2. 使用EME制作您的Silverlight媒体

imageEME可以帮助我们制作Silverlight相关的多媒体内容,其主要功能就是可以将我们的录播或者直播的视频内容以Silverlight方式向外界分发,其界面截图如右图所示(这是显示的将现有视频转换为VC-1编码,并且再通过Silverlight模板发布的视图,您也可以选择直播,即Live视图,通过摄像头及麦克风直播)。

EME主要有以下功能:

1)将现有视频根据需要转化为VC-1编码的WMV格式;

2)对视频进行编辑,包括分割、组合、视口大小裁剪、压制水印等;

3)在视频格式转化时,可以启用A/B Compare模式,在转化过程中实时对比转化的效果;

4)根据选择的时间点进行截图,制作为DVD Index模式;

5) 在视频内容中添加脚本代码等;

6) 添加各种嵌入式的Meta data;

7) 根据所选择的模板,为视频添加Silverlight互动内容,可以直接发布到现有网站上;

EME的使用非常简单,也很直观,您可以直接下载,估计通过不到半小时的学习时间,您就可以成为EME高手了。我们在这儿,所需要做的就是选择一个现有的视频文件(当然,您也可以直接录制一个自我介绍),使用EME进行编辑后,选择一个输出模板将其转化为Silverlight内容。

3. 将其上传到Streaming Live上,与大家分享

 微软为了推广Silverlight,在http://streaming.live.com上为各位网友提供了免费的5G空间,上传Silverlight内容。每个Silverlight作品不大于22M,这意味着您可以上传10分钟左右的700Kbs质量的视频(由于我们想放在博客边栏上,所以我们其实只需要选择200Kbs质量就可以了)。您现在可以先去申请这个空间。申请完成后,可以简单看看其示例代码,下面就开始进行上传。

在上传前,转到EME的输出文件夹,找到我们刚才制作的内容所在的子文件夹,在其中新建一个名称为Manifest.xml的文件,将以下的内容放在这个XML文件中,

<SilverlightApp>
 <version>1.0</version>
 <loadFunction>StartWithParent</loadFunction>
 <jsOrder>
   <js>MicrosoftAjax.js</js>
   <js>BasePlayer.js</js>
   <js>PlayerStrings.js</js>
   <js>player.js</js>
   <js>StartPlayer.js</js>
 </jsOrder>
</SilverlightApp>

 保存完毕后,选择此文件夹中所有的”.xml”,”.js”,”.wmv”,”.jpg”,”xaml”文件,以标准ZIP方式将这些文件(不含文件夹)压缩到一个包中。请注意,不要选择压缩比,否则不保证在服务器端一定可以解压。

然后到Streaming Live网站中,登录后在右侧主菜单中选择“Manage Your Application”,然后您可以看到一个“Upload Your Application”的链接,点击它后,再出现的文本框中为您的应用程序起一个名字,然后在下面的文件选择框中选择我们刚压好的ZIP包,就可以进行上传了.image

4. 将Streaming Live上的内容显示在您的博客边栏上

最后一步就比较简单了,在上传完毕后,会显示一个详细指示,告知您如何在现有网站中添加上传的内容,另外,还有一个预览链接,您可以先预览一下,以确认上传的内容正确,如左图所示。

这里面提供的第三步其实有些画蛇添足,因为它是特意再生成另外一个JS文件,把一些代码放在哪里面,其实你完全可以把这里面的代码提取出来,直接放在第二步里面,然后再与第一步的内容合成一个代码段,然后插入到你的博客侧边条当中。

由于默认的大小是500*400的,你可以修改这个DIV的大小,即可以改变您的Silverlight显示内容的大小,我就已经修改了200*150。就是您在我的博客右侧所看到的。

 

在您上传完毕后,可以把您的邮件地址,以及您的博客地址放在留言中,我会选择前四位将Silverlight内容显示在其博客侧边栏的朋友赠送Popfly邀请权,让您可以体验Popfly制作Mash Up的能力。

关于城市的记忆(杭州)

来杭州已经有四五次了,具体多少次我也根本记不得了。第一次来杭州记得是与边防一起来的,那时候他还在微软DPE。我们一起过来做活动,原来与他没有见过面(他那时候Base在上海),所以我们相约在西湖边。那晚他很晚才到,于是我们俩个人在午夜的时候一起在西湖边闲逛。走不了久,竟然发现,后面还有保安尾随,估计是看到两个大男人午夜逛西湖,担心我们俩都为情所困有欲投湖的嫌疑,所以尾随以做保全,感谢西湖保安!

在今年之前,一直感觉在杭州坐出租车真是一种美好的回忆,车大坐着舒服,大部分都是帕萨特,比起台北那种小破车强多了。但这种美好的记忆从今年五月份参加侠客行活动时就发生了重大改变,因为在那次,我才发现杭州的出租车司机的拒载率竟然会这么高,大部分时候打不到车,打到车的时候司机会在你没有上车的时候问你去哪儿,如果不是他想去的地方就一概拒载,扬长而去。而我做为一个异乡人,只能看着那出租车屁股欲哭无泪:怪不得我当初会夜游西湖呢。

昨天又到了杭州,早上出门打车还方便,但在事情处理完后,准备返回酒店时,却发现又遇到状况了。杭州的出租车司机师傅们的上下班意识竟然是那么强烈,七八辆空车打着营运标志在知道我酒店的名字后,都告诉我他们下班了,有些甚至根本连一句礼貌的回话都不说。

杭州的灵隐寺也是一个不错的地方,原来从来没有去过,也是今年五月份去的。在景区门口买了通票就直接进门了,结果到了灵隐寺门口才知道,所谓的通票根本通不过灵隐寺的寺门,只限飞来峰景区,但已经进来了,不能只游一下山吧,于是不得不再掏钱。不明白为什么作为一个旅游城市,这些通票上面也不做任何告知?

杭州,真是让我心寒的“旅游”城市,我在想以后还会不会再来…

MSDN Webcast: Silverlight风云演义系列

很久没有讲过Web cast了,上一次讲Gadget是一个应景之作,没有做太多的准备,所以效果其实并不是非常好。本来预计从上周开始,在每周五下午进入到Silverlight风云演义系列的课程,但由于临时出差来到了南方,所以第一堂课的时间改为了下周二(2007年8月7日)下午,这堂课的名字为《从“我佩服”谈起》,顾名思义,我们第一堂课是归纳一下WPF的相关特点,以及与Silverlight相关的特性。如果您对这堂课感兴趣,可以到上面的链接之中直接预订该课程。

风云演义系列将会是我今年下半年的一个重点Web cast课程,希望通过此系列的课程,让大家能够对于Silverlight有一个通盘的了解。当然,由于这是一个新的技术,所以我本人也在学习当中,如果在课程当中有误解的地方,希望大家可以及时给我提出来。

以下是本次课程的第一系列的主要环节:

1. 从“我佩服”谈起(嘉宾:黄继佳)

我的一位同事在某次TechED大会上将WPF(Windows Presentation Foundation)称之为“我佩服”(以拼音首字母组字),从而使之在微软技术界就已经形成了固定的代名词。WPF发展到现在,有哪些比较Cool的应用?我们在本次课程当中给出一个大阅兵,让大家来体验一下借助于“我佩服”之力全球应用开发商所开发的应用程序。WPF—-作为“武林至尊”的宝刀—-究竟又有哪些特性,使得其能够拥有自己的一片天地呢?

嘉宾介绍:黄继佳先生现任微软(中国)有限公司平台及开发技术部技术经理。现主要面向互联网企业,独立软件开发商提供微软公司基于互联网新技术的技术合作,从而更好地提升互联网用户的潜能。在加入平台及开发技术部之前,黄继佳先生曾担任微软亚洲工程院移动技术中心新技术孵化项目项目经理,青檬网络联合创始人。

讲义下载:您可以从此处下载从“我佩服”谈起

2. “闪亮”不出,谁与争锋(嘉宾:温飞飞)

从当初的“WPF/e”,到现在的“Silverlight”,齐集天地之灵气的“闪亮”(Silverlight的中文非官方简称)即将横空出世。作为微软最新面向Web开发的技术,“闪亮”吸引了无数技术以及设计人员的目光。在本次课程当中,我们将一睹“闪亮”的艺术气质,并且了解其底层的技术方向。

嘉宾介绍:温飞飞,网名ai829。知名Flash开发爱好者,精通Adobe全系列产品,对于表现层技术有着多年的研究经验,现就职于搜狐,负责新技术,新产品的研究与推广工作,其博客地址为:http://blog.80s.net.cn

3. “工欲善其事,必先利其器”上之Expression篇(嘉宾:李超)

本课程主要面向设计人员,也适合对Expression感兴趣的开发人员。主要讲解微软最新推出的设计工具Expression Studio,分别会介绍其中的Expression Design,Expression Blend,Expression Media以及Expression Web,其中前两者将会重点介绍。在Expression Blend当中,我们会分别制作WPF/Silverlight的“Hello World”应用程序,与大家对比其中的不同点。

嘉宾介绍:李超,网名Allan。原闪客帝国网站运营总监,AMG WORLD WIDE创意总监,创意与交互设计领域资深设计人,对于表现层技术有着多年的研究经验.著有《CSS网站布局实录》一书,其博客地址为:http://allan.flashempire.net/blog/

4. “工欲善事,必先利其器”之下Visual Studio篇(嘉宾:秦海鹏)

本课程主要面向开发人员以及项目经理,讲解如何利用Visual Studio 2005以及Visual Studio 2008 (Codename: Orcas)来制作WPF/Silverlight应用程序,在Silverlight环节,我们会分别使用C#/Javascript语言来编写相应的业务逻辑。同时,面向项目经理也会介绍开发人员与设计人员的协作问题。

嘉宾介绍:秦海鹏,网名 HopeQ。中国汽车网技术总监,在Web开发方面有丰富的经验,曾开发与实施过多个基于Flash、FlashCom技术的RichMedia 商业产品。其博客地址为http://blog.joycode.com/hopeq .

5. 亲自动手制作视频播放器(嘉宾:范蕊)

本节课,我们将使用上面所介绍的工具动手做一个“视频播放器”,将会使用到上述介绍的工具,即Expression 以及Visual Studio等。在制作完成后,我们还将学习如何部署该应用程序到各种Web Server上,甚至发布视频到Silverlight Streaming(http://silverlight.live.com)上。

嘉宾介绍:范蕊,网名teajava。现效力于百度用户体验部,主要负责MP3、音乐掌门人、搜藏、日文等项目的界面制作,专注于Web开发,实战经验丰富,希望与大家共同交流探讨网络的最新进展。百度空间为: http://hi.baidu.com/GPRS

6. 与现有网站集成(嘉宾:刘俊民)

如何将Silverlight集成到现有网站当中?如何使用ASP.NET Future当中的“<ASP:XAML>”以及“<ASP:MEDIA>”等标签?在本课程当中,我们将完成这最后的一步,将您的Silverlight创作完美的集成到您的现有页面中。对于Silverlight集成时需要留意的一些特殊的技巧以及注意事项都会涉及。

 嘉宾介绍:刘俊民,网名宝玉,知名ASP.NET技术MVP,专注于Web开发基础,现任开放实验室网站站长,有丰富的Web开发经验,尤其在社区软件方向。其博客地址为http://blog.joycode.com/dotey.

 

除了第一堂课,其余每堂课在不出意外的情况下,都会在每周五下午14:00准时与大家在MSDN China Webcast平台上与大家见面,欢迎大家届时收看收听。在听课之前,为了保证您进入课堂非常顺利,建议大家事先做好以下准备:

1.  操作系统

该课堂支持Windows 2000以上的操作系统,IE支持IE6.0 SP1以上的浏览器;

2. Office Live Meeting 2005会议控制台

MSDN Webcast课程全部基于Office Live Meeting 2005会议控制台进行讲授,如果您尚未安装该控制台,可能届时您进入课程需要花费一定的时间,建议您可以先预安装该平台,点击此处查看详细信息

3. 其它

为了不影响他人工作或者休息,建议您在电脑上配备专用耳机。如果您想实时感受我们在课程当中所演示的应用程序,或者想进行开发实战,建议您安装以下软件:

    • .NET Framework 3.0(这是浏览WPF DEMO的必需安装,.NET 3.0必须安装在Windows XP SP2以上操作系统上)
    • Silverlight 1.0 RC & Silverlight 1.1 Alpha Refresh(这是浏览Silverlight DEMO的必需安装,请至http://www.silverlight.net上进行安装)
    • Visual Studio 2005 Or Visual Studio 2008 Beta 2(这是进行开发实战的必须安装,还需要安装Cider插件,以便支持Silverlight开发)
    • Expression Bl
      en
      d 2八月社区技术预览版(这是进行设计实战的必须安装,请至http://www.microsoft.com/expression上进行安装,请注意,是Blend 2,不是Blend)

 

 

有任何建议或者意见,欢迎大家在此处留言提出,非常感谢!