Posts Tagged ‘WEB标准’

十一月 22, 2008 0

xhtml CSS网页布局:HTML结构化 DIV CSS网页布局入门指南

By admin in xhtml+css

你正在学习CSS布局吗?是不是还不能完全掌握纯CSS布局?通常有两种情况阻碍你的学习:    第一种可能是你还没有理解CSS处理页面的原理。在你考虑你的页面整体表现效果前,你应当先考虑内容的语义和结构,然后再针对语义、结构添加CSS。这篇文章将告诉你应该怎样把HTML结构化。    另一种原因是你对那些非常熟悉的表现层属性(例如:cellpadding,、hspace、align=”left”等等)束手无策,不知道该转换成对 应的什么CSS语句。     当你解决了第一种问题,知道了如何结构化你的HTML,我再给出一个列表,详细列出原来的表现属性用什么CSS来代替。    结构化HTML    我们在刚学习网页制作时,总是先考虑怎么设计,考虑那些图片、字体、颜色、以及布局方案。然后我们用Photoshop或者Fireworks画出来、切割成小图。最后再通过编辑HTML将所有设计还原表现在页面上。    如果你希望你的HTML页面用CSS布局(是CSS-friendly的),你需要回头重来,先不考虑“外观”,要先思考你的页面内容的语义和结构。    外观并不是最重要的。一个结构良好的HTML页面可以以任何外观表现出来,CSS Zen Garden是一个典型的例子。CSS Zen Garden帮助我们最终认识到CSS的强大力量。    HTML不仅仅只在电脑屏幕上阅读。你用photoshop精心设计的画面可能不能显示在PDA、移动电话和屏幕阅读机上。但是一个结构良好的HTML页面可以通过CSS的不同定义,显示在任何地方,任何网络设备上。    开始思考    首先要学习什么是”结构”,一些作家也称之为”语义”。这个术语的意思是你需要分析你的内容块,以及每块内容服务的目的,然后再根据这些内容目的建立起相应的HTML结构。    如果你坐下来仔细分析和规划你的页面结构,你可能得到类似这样的几块:    标志和站点名称    主页面内容    站点导航(主菜单)    子菜单    搜索框    功能区(例如购物车、收银台)    页脚(版权和有关法律声明)    我们通常采用DIV元素来将这些结构定义出来,类似这样:    <div id=”header”></div>    <div id=”content”></div>    <div id=”globalnav”></div>    <div id=”subnav”></div>    <div id=”search”></div>    <div id=”shop”></div>    <div id=”footer”></div>    这不是布局,是结构。这是一个对内容块的语义说明。当你理解了你的结构,就可以加对应的ID在DIV上。DIV容器中可以包含任何内容块,也可以嵌套另一个DIV。内容块可以包含任意的HTML元素—标题、段落、图片、表格、列表等等。    根据上面讲述的,你已经知道如何结构化HTML,现在你可以进行布局和样式定义了。每一个内容块都可以放在页面上任何地方,再指定这个块的颜色、字体、边框、背景以及对齐属性等等。    使用选择器是件美妙的事    id的名称是控制某一内容块的手段,通过给这个内容块套上DIV并加上唯一的id,你就可以用CSS选择器来精确定义每一个页面元素的外观表现,包括标 题、列表、图片、链接或者段落等等。例如你为#header写一个CSS规则,就可以完全不同于#content里的图片规则。    另外一个例子是:你可以通过不同规则来定义不同内容块里的链接样式。类似这样:#globalnav a:link或者 #subnav a:link或者#content a:link。你也可以定义不同内容块中相同元素的样式不一样。例如,通过#content p和#footer p分别定义#content和#footer中p的样式。从结构上讲,你的页面是由图片、链接、列表、段落等组成的,这些元素本身并不会对显示在什么网络 设备中(PDA还是手机或者网络电视)有影响,它们可以被定义为任何的表现外观。    一个仔细结构化的HTML页面非常简单,每一个元素都被用于结构目的。当你想缩进一个段落,不需要使用blockquote标签,只要使用p标签,并对p 加一个CSS的margin规则就可以实现缩进目的。p是结构化标签,margin是表现属性,前者属于HTML,后者属于CSS。(这就是结构于表现的 相分离.)    良好结构的HTML页面内几乎没有表现属性的标签。代码非常干净简洁。例如,原先的代码<table width=”80%” cellpadding=”3″ border=”2″ align=”left”>,现在可以只在HTML中写<table>,所有控制表现的东西都写到CSS中去,在结构化的HTML中, table就是表格,而不是其他什么(比如被用来布局和定位)。   亲自实践一下结构化    上面说的只是最基本的结构,实际应用中,你可以根据需要来调整内容块。常常会出现DIV嵌套的情况,你会看到”container”层中又有其它层,结构类似这样:    <div id=”navcontainer”>    <div id=”globalnav”>    <ul>a list</ul>    </div>    <div id=”subnav”>    <ul>another list</ul>    </div>    </div>    嵌套的div元素允许你定义更多的CSS规则来控制表现,例如:你可以给#navcontainer一个规则让列表居右,再给#globalnav一个规则让列表居左,而给#subnav的list另一个完全不同的表现。     用CSS替换传统方法    下面的列表将帮助你用CSS替换传统方法:    HTML属性以及相对应的CSS方法    HTML属性    CSS方法说明    align=”left”    align=”right” float: left;    float: right; 使用CSS可以浮动 任何元素:图片、段落、div、标题、表格、列表等等    当你使用float属性,必须给这个浮动元素定义一个宽度。    marginwidth=”0″ leftmargin=”0″ marginheight=”0″ topmargin=”0″ margin: 0; 使用CSS, margin可以设置在任何元素上, 不仅仅是body元素.更重要的,你可以分别指定元素的top, right, bottom和left的margin值。  [...]

Tags: , , , ,

十一月 22, 2008 0

WEB2.0标准教程:如何应用WEB标准改善现有网站?

By admin in xhtml+css

我们大部分的设计师依旧在采用传统的表格布局、表现与结构混杂在一起的方式来建立网站。学习使用XHTML+CSS的方法需要一个过程,使现有网站符合网站标准也不可能一步到位。最好的方法是循序渐进,分阶段来逐步达到完全符合网站标准的目标。如果你是新手,或者对代码不是很熟悉,也可以采用遵循标准的编辑工具,例如Dreamweaver MX 2004,它是目前支持CSS标准最完善的工具。 1.初级改善 为页面添加正确的DOCTYPE  很多设计师和开发者都不知道什么是DOCTYPE,DOCTYPE有什么用。DOCTYPE是document type的简写。主要用来说明你用的XHTML或者HTML是什么版本。浏览器根据你DOCTYPE定义的DTD(文档类型定义)来解释页面代码。所以,如果你不注意设置了错误的DOCTYPE,结果会让你大吃一惊。XHTML1.0提供了三种DOCTYPE可选择: (1)过渡型(Transitional ) <!DOCTYPE html PUBLIC ”-//W3C//DTD XHTML 1.0 Transitional//EN” ”http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>  (2)严格型(Strict ) <!DOCTYPE html PUBLIC ”-//W3C//DTD XHTML 1.0 Strict//EN” ”http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”>  (3)框架型(Frameset ) <!DOCTYPE html PUBLIC ”-//W3C//DTD XHTML 1.0 Frameset//EN” ”http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd”>  对于我们初级改善来说,只要选用过渡型的声明就可以了。它依然可以兼容你的表格布局、表现标识等,不至于让你觉得变化太大,难以掌握。 Tip:你懒得输入上面过渡型代码的话,可以访问http://www.macromedia.com/网站的首页,然后查看源代码,把head区同样的代码拷贝粘贴就可以了。 设定一个名字空间(Namespace)  直接在DOCTYPE声明后面添加如下代码: <html XMLns=”http://www.w3.org/1999/xhtml” >  一个namespace是收集元素类型和属性名字的一个详细的DTD,namespace声明允许你通过一个在线地址指向来识别你的namespace。只要照样输入代码就可以。 声明你的编码语言  为了被浏览器正确解释和通过标识校验,所有的XHTML文档都必须声明它们所使用的编码语言。代码如下: <meta http-equiv=”Content-Type” content=”text/html; charset=GB2312″ />  这里声明的编码语言是简体中文GB2312,你如果需要制作繁体内容,可以定义为BIG5。 用小写字母书写所有的标签  XML对大小写是敏感的,所以,XHTML也是大小写有区别的。所有的XHTML元素和属性的名字都必须使用小写。否则你的文档将被W3C校验认为是无效的。例如下面的代码是不正确的: <TITLE>公司简介</TITLE>  正确的写法是: <title>公司简介</title> 同样的,<P>改成<p>,<B>改成<b>等等。 这步转换很简单。  为图片添加 alt 属性  为所有图片添加alt属性。alt属性指定了当图片不能显示的时候就显示供替换文本,这样做对正常用户可有可无,但对纯文本浏览器和使用屏幕阅读机的用户来说是至关重要的。只有添加了alt属性,代码才会被W3C正确性校验通过。注意的是我们要添加有意义的alt属性,象下面这样的写法毫无意义: <img src=”logo_unc_120x30.gif” alt=”logo_unc_120x30.gif”>  正确的写法: <img src=”logo_unc_120x30.gif” alt=”UNC公司标志,点击返回首页”>  给所有属性值加引号  在HTML中,你可以不需要给属性值加引号,但是在XHTML中,它们必须被加引号。 例:height=”100″,而不能是height=100。 关闭所有的标签  在XHTML中,每一个打开的标签都必须关闭。就象这样: <p>每一个打开的标签都必须关闭。</p> <b>HTML可以接受不关闭的标,XHTML就不可以。</b>  这个规则可以避免HTML的混乱和麻烦。举例来说:如果你不关闭图像标签,在一些浏览器中就可能出现CSS显示问题。用这种方法能确保页面和你设计的一样显示。需要说明的是:空标签也要关闭,在标签尾部使用一个正斜杠”/”来关闭它们自己。例如: <br /> <img src=”webstandards.gif” />  经过上述七个规则处理后,页面就基本符合XHTML1.0的要求。但我们还需要校验一下是否真的符合标准了。我们可以利用W3C提供免费校验服务(http://validator.w3.org/)。发现错误后逐个修改。在后面的资源列表中我们也提供了其他校验服务和对校验进行指导的网址,可以作为W3C校验的补充。当最后通过了XHTML验证,恭喜你已经向网站标准迈出了一大步。不是想象中的那么难吧! 2.中级改善 接下来我们的改善主要在结构和表现相分离上,这一步不象第一步那么容易实现,我们需要观念上的转变,以及对CSS2技术的学习和运用。但学习任何新知识都需要花点时间的,不是吗?诀窍在于边做边学。假如你一直采用表格布局,根本没用过 CSS,也不必急于跟表格布局说再见,你可以先用样式表代替 font 标签。随着你学到的越多,你能做的就越多。好,一起来看看我们需要做哪些事: 用CSS定义元素外观  我们在写标识时已经养成习惯,当希望字体大点就用<h1>,希望在前面加个点符号就用<li>。我们总是想<h1>的意思是大的,<li>的意思是圆点,<b>的意思是“加粗文本”。而实际上, <h1>能变成你想要的任何样子,通过CSS,<h1>能变成小的字体,<p>文本能够变成巨大的、粗体的,<li>能够变成一张图片等等。我们不能强迫用结构元素实现表现效果,我们应该使用CSS来确定那些元素的外观。例如,我们可以使原来默认的6级标题可以看起来大小一样: h1, h2, h3, h4, h5, h6{ font-family: 宋体, serif; font-size: 12px; }  用结构化元素代替无意义的垃圾  许多人可能从来都不知道HTML和XHTML元素设计本意是用来表达结构的。我们很多人已经习惯用元素来控制表现,而不是结构。例如,一段列表内容可能会使用下面这样的标识: 句子一<br /> 句子二<br /> 句子三<br />  如果我们采用一个无序列表代替会更好: <ul> <li>句子一</li> <li>句子二</li> <li>句子三</li> </ul>  你或许会说“但是<li>显示的是一个圆点,我不想用圆点”。事实上,CSS没有设定元素看起来是什么样子,你完全可以用CSS关掉圆点。 给每个表格和表单加上id  给表格或表单赋予一个唯一的、结构的标记,例如 <table id=”menu”>  接下来,在书写样式表的时候,你就可以创建一个“menu”的选择器,并且关联一个CSS规则,用来告诉表格单元、文本标签和所有其他元素怎么去显示。这样,不需要对每个<td>标签附带一些多余的、占用带宽的表现层的高、宽、对齐和背景颜色等等属性。只需要一个附着的标记(标记“menu”的id标记),你就可以在一个分离的样式表内为干净的、紧凑的代码标记进行特别的表现层处理。 [...]

Tags: ,

十一月 22, 2008 0

WEB2.0标准教程:应用WEB标准建设网站有什么好处?

By admin in Web Standards

我们大部分人都有深刻体验,每当主流浏览器版本的升级,我们刚建立的网站就可能变得过时,我们就需要升级或者重新建造一遍网站。例如1996-1999年典型的”浏览器大战”,为了兼容Netscape和IE,网站不得不为这两种浏览器写不同的代码。同样的,每当新的网络技术和交互设备的出现,我们也需要制作一个新版本来支持这种新技术或新设备,例如支持手机上网的WAP技术。类似的问题举不胜举:网站代码臃肿、繁杂浪费了我们大量的带宽;针对某种浏览器的DHTML特效,屏蔽了部分潜在的客户;不易用的代码,残障人士无法浏览网站等等。这是一种恶性循环,是一种巨大的浪费。 如何解决这些问题呢?有识之士早已开始思考,需要建立一种普遍认同的标准来结束这种无序和混乱。商业公司(Netscape、Microsoft等)也终于认识到统一标准的好处,因此在W3C(W3C.org)的组织下,网站标准开始被建立(1998年2月10日发布XML1.0为标志),并在网站标准组织(webstandards.org)的督促下推广执行。 简单说,网站标准的目的就是: ● 提供最多利益给最多的网站用户  ● 确保任何网站文挡都能够长期有效  ● 简化代码、降低建设成本  ● 让网站更容易使用,能适应更多不同用户和更多网路设备  ● 当浏览器版本更新,或者出现新的网络交互设备时,确保所有应用能够继续正确执行。  对于网站设计和开发人员来说,遵循网站标准就是使用标准;对于你的网站用户来说,网站标准就是最佳体验。 采用网站标准的好处 对网站浏览者的好处: ● 文件下载与页面显示速度更快;  ● 内容能被更多的用户所访问(包括失明、视弱、色盲等残障人士);  ● 内容能被更广泛的设备所访问(包括屏幕阅读机、手持设备、搜索机器人、打印机、电冰箱等等)  ● 用户能够通过样式选择定制自己的表现界面  ● 所有页面都能提供适于打印的版本  对网站所有者的好处: ● 更少的代码和组件,容易维护  ● 带宽要求降低(代码更简洁),成本降低。举个例子:当 ESPN.com 使用 CSS改版后,每天节约超过两兆字节(terabytes)的带宽。  ● 更容易被搜寻引擎搜索到  ● 改版方便,不需要变动页面内容  ● 提供打印版本而不需要复制内容  ● 提高网站易用性。在美国,有严格的法律条款(Section 508)来约束政府网站必须达到一定的易用性,其他国家也有类似的要求。

Tags: ,

五月 7, 2008 0

页面仔

By admin in Words

在检测QMS在IE5.5的时候….发现margin:0 auto;竟然不起作用….用了几个办法都没弄好…最后就上经典论坛搜索了….呵呵 找到解决的办法了…要在全局定义text-align:center;然后定义DIV的text-align:left;就可以了….. *{text-align:center;} div{text-align:left;}   天气热了,头发又长了..上班的注意形象,今天特意很早就签退了…回到松坪山理发..感觉还不错…后台发现后面竟然特别长….晕…心里郁闷啊…后面感觉就削薄了…没有削短了…晕了….. 晚上跟腾讯的twinsèn的在群里面聊天…学到不少东西…他称自己是页面仔…这个称法太搞笑了….我喜欢…. 以后我就是页面仔…. 以前总是想法设法让自己写的代码漂亮,明了…哈哈 通过twinsèn知道了CS3里面新增了CSS格式化….太强悍了…感谢twinsèn…了…自己试了试…感觉真的好强悍…减少了不少时间… 明天是奥运火炬在深圳传递…到处都装饰了一番…在大冲天桥…看到两个美女…拿这国旗跟奥运会旗…脸上也贴着国旗…感觉好酷….天桥上也挂了奥运的横幅…感觉联想特有才…在招牌上挂了一面国旗…呵呵…周围两边也有小旗帜…唉..没有相机…要么就可以…..明天要封路…只能早点起来…19路不在松坪山停…只能坐209了….

Tags: , ,