Archive for the ‘xhtml+css’ Category

六月 11, 2009 0

[转][更新]最新CSS兼容方案

By admin in xhtml+css

转自CSS森里 -鬼 浏览器在不断更新,可使用的hack也需要更新下了,继上一篇《 最新CSS兼容方案 》之后,Opera和Safari都已经更新了版本,IE8也出来了,还有一个Chrome。新版本的Opera 9.6 和Safari 3.2.3分别有一个hack不能使用了,具体为: Opear: *+html .e{ background-color:#0000FF;/* OP */ } Safai: @media all and (min-width:0){ select{ … }} 还好发现了另一个Safari可以用的hack,Chrome和Safari的hack一样,还无法单独区分。另外“[; … ]”中的内容只有Opera读不到,注意“[]”要成对出现,不然Opera下会导致后面的样式无法读取。重新整理的hack如下: .e{ color:#FFF;/* FF,OP,IE8 */ [;color:#0F0;]/* SF,CH */ *color:#FF0;/* IE7 */ _color:#F00;/* IE6 */ } .e{ background-color:#332200;/* FF*/ } html* .e{ background-color:#FF00FF;/* Sa IE7 CH */ } *+html .e{ *background-color:#0000FF;/* [...]

Tags:

四月 10, 2009 0

文本兼容性模式

By admin in xhtml+css

注意:本文档是预备文档,随时可能变更。 对于 Web 开发人员来说,文本兼容性是一个要考虑的重要问题。Windows Internet Explorer 8 引入了文本兼容性模式,该模式允许 Web 开发人员将浏览器设置为以与旧版本相同的方式显示网页,从而允许开发人员选择更新时间。 本文档将介绍由 Windows Internet Explorer 8 支持的文本兼容性模式,以及如何使用自定义标头基于每个页面或每个站点实现这些模式。实现适当的兼容性模式后,可以确保站点与 Windows Internet Explorer 8 及更高版本兼容。 各种兼容性模式 Windows Internet Explorer 8 支持多种兼容性模式,它们可启用不同的受支持的功能,并影响内容的呈现方式。例如, IE5 模式呈现内容时,像是使用了 Windows Internet Explorer 7 的 Quirks 模式,这与 Windows Internet Explorer 5 显示内容的方式很相似。 IE7 模式呈现内容时,无论页面是否包含 指令,都像是使用了 Windows Internet Explorer 7 的标准模式。 EmulateIE7 模式通知 Windows Internet Explorer 使用 [...]

Tags: ,

十一月 23, 2008 0

IE5至IE7读取不了4095行以后的CSS

By admin in xhtml+css

文章来源http://blog.gulu77.com/?p=88 经过测试IE5至IE7会读取不了CSS文件中4095条以后的样式,又一个IE莫名的错误,为什么读取不了4095条以后的CSS实在令人费解。           IE8已修正这错误,所以在下面例子中的标题,IE5至IE7将以80px字体大小及红色颜色显示。而IE8及其它浏览器将以18px字体大小及绿色颜色显示。( IE4及以下我没去测试)   另外值得一提的是“ 一个CSS文件的不能超过288kb?”这数字可能会有偏差,因为在我的本地环境经测试,结果是是300kb以上。

十一月 22, 2008 0

CSS 期望表 (Wishlist)

By admin in xhtml+css

著名的 Web 设计网站 CSS-tricks.com 最近组织了一次调查,请15名顶尖的 Web 设计师对 CSS 提出自己的期望,15名设计师包括 Jon Hicks,  Wolfgang Bartelme, Mint 的 Shaun Inman 以及 Stuff and Nonsense 的 Andy Clarke。 调查结果显示,最被期待的 CSS 功能是 CSS 圆角,其它期待的功能包括跨浏览器渐变与阴影,类似 Photoshop 的层融合效果,更一致的声明简化语法以及对条件判断的本地支持。这些期待中一部分已经包含在未来的 CSS-3 中,但更多的仍然只是一些梦想。 WebMonkey 的编辑们将这个 Wishlist 发表在他们的网站并让 WebMonkey 的读者投票选出最热门的项目,以下是按投票多少排列的 CSS Wishlist 部分列表(只选取最热门的项目)。 垂直居中 by michael lascarides 针对 block 对象的更容易的垂直居中设置。(div + css 让人既爱且恨的一个重要原因就是垂直居中,让一个对象垂直居中显示在 block 容器中,且兼容所有主流浏览器简直就是一个噩梦 – 译者) CSS [...]

Tags: ,

十一月 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: ,