漂亮的网页设计
免费 webdesign 设计模版
很多webstandards中文翻译文章
http://www.sharkui.com/
用Web标准进行开发
english
http://www.456bereastreet.com/lab/developing_with_web_standards
中文版
http://www.456bereastreet.com/lab/developing_with_web_standards/zh/
British design(for web standards and accessibility)
http://stuffandnonsense.co.uk/general/destinations.html
http://openwebdesign.org/
开源webdesign
提交符合xhtml站点
http://www.w3csites.com/
http://aleto.ch/
(x)html, dom, css, js and design
CSS 酷站
http://www.cssimport.com/
Dive into accessibility(en)
http://blog.guoshuang.com/david/guoshuangweb/2005chunjie/diveintoaccessibility-html.zip
中文版:(在 30 天内打造更具亲和力的网站)
http://www.soulogic.com/doc/dia/index.html
XHTML1.0 Element Attributes by DTD
http://www.blackwidows.org.uk/resources/tutorials/xhtml/attribute-comparison.html
G-P-L 翻译了很多 W3C 的好文章
中文: http://www.w3cn.org/
阿捷手册: guoshuangweb/ftp/w3cn1.0_gb2312.chm
http://www.w3cn.org/resource/links/2004/76.html 阿捷推荐的链接
这是一笔财富,485个与web标准有关的、受人喜爱的站点、文章和blog被收集在这里。Steve Smith和Shaun Inman完成了这个列表,因此获益的我们应该感谢他们!
English: http://www.htmldog.com/
http://www.csszengarden.com/
http://www.meyerweb.com/
http://www.dezwozhere.com/links.html 巨好!很多很全!
http://www.sitepoint.com/article/tables-vs-css
http://www.positioniseverything.net/
测试网页在不同系统 windows linux osx 等,不同浏览器(ie,opera,netscape,mozilla等)下的截屏表现
http://browsercam.com/
xhtml和css校验的链接
http://validator.w3.org/check/referer
http://jigsaw.w3.org/css-validator/validator?uri=http://www.w3cn.org
下载本地校验软件 http://www.arealvalidator.com/download/
中国xml论坛 新手必读(必看) http://bbs.xml.org.cn/dispbbs.asp?boardID=1&ID=431
xhtml1.1和CSS2.1 w3c定义
showlog.asp?cat_id=32&log_id=1507
优秀xhtml 学习站点推荐
showlog.asp?cat_id=31&log_id=1477
CSS 陈列馆 - 一网打尽
showlog.asp?cat_id=31&log_id=1319
推荐xhtml 学习网站
showlog.asp?cat_id=32&log_id=1368
Web 设计资源
showlog.asp?cat_id=31&log_id=764
很多入门的知识,翻译了一些上面htmldog的文章
http://www.x5.com.cn/
不断补充中…
为什么要抛弃HTML
作者:阿捷 2004-6-25 17:00:04
“为什么要抛弃HTML?”这个问题如果展开说又臭又长,我尽量简单吧:
HTML发展到今天存在三个主要缺点:
1.太简单。不能适应现在越多的网络设备和应用的需要。比如手机、PDA、信息家电都不能直接显示HTML。
2.太庞大。由于HTML代码不规范、臃肿,浏览器需要足够智能和庞大才能够正确显示HTML。显然在你的PDA上装一个IE6是不可能的。空间不够,运算也跟不上。
3.数据与表现混杂。这样你的页面要改变显示,就必须重新制作HTML。对不同的网络设备显示同样的数据都需要制作不同的HTML。
你可能会说这些缺点对你现在都无所谓,不严重。但社会总在进步,技术总在发展,人们总希望工作越来越简单,越来越有效率。而网络设备的发展不会因为HTML的缺点而停止。笨重的台式电脑会被越来越多轻便小巧的设备替代。因此需要有一种新的语言,能够描述数据使所有的设备都能理解(这就产生了XML);需要一种语言来控制表现,使数据在不同的设备上都正确显示(这就产生了XSl)。
也就是说,未来我们肯定会使用XML来转换数据,使用XSL来控制表现。那么现在呢?
现在,很明显,原有成千上万的HTML页面还需要正常工作,不可能一下抛弃。而且现在的浏览器还不能直接表现XML文档。即使以后能,现在怎么办?
于是W3C又制定了XHTML。XHTML是HTML向XML过度的一个桥梁。是一个引导人们逐步走向规范、走向XML的过渡方案。XHTML虽然有“X”但它并不能扩展,只是在HTML的基础上严格遵循XML规范。它学起来很简单,几乎没有什么新的知识。
而XSL呢,现在可以用CSS来实现XSL的一部分功能。
以上就是“为什么要抛弃HTML”的解答。可能说的不够全面,主要意思在了。
初学web标准的几个误区
作者:阿捷 2004-7-7 11:37:11
非常高兴地看到很多设计师开始关注和尝试使用web标准制作网页。但从网友们的问题和制作中发现几个问题,在这里特别提醒一下:
1.不是为了通过校验才标准化。
web标准的本意是实现内容(结构)和表现分离,就是将样式剥离出来放在单独的css文件中。这样做的好处是可以分别处理内容和表现,也方便搜索和内容的再利用。
W3C校验仅仅是帮助你检查XHTML代码的书写是否规范,CSS的属性是否都在CCS2的规范内。代码的标准化仅仅是第一步,不是说通过的校验,我的网页就标准化了。我们不是为了虚名,或者向别人炫耀:“看我的页面通过了校验”而去标准化,我们的目的是为了使自己的网页设计工作更有效率,为了缩小网页尺寸,为了能够在任何浏览器和网络设备中正常浏览。
请大家沉下心来,仔细研究和理解web标准的内涵。网络上已经充满了不要浮躁和虚荣,请不要将这种风气带到web标准应用中来,这样做只会影响和损害web标准的推广。
2.不要用传统的表格思维来套div
“CSS布局就是将原来用table的地方用div来替代,原来是表格嵌套,现在是DIV嵌套。”这种观点是错误的!
请跳出原来表格布局的禁锢,抛弃一个td接一个td放置图片和内容的思维方式。我们上面说过web标准的目的是分离内容和表现,你可以这样思考,页面里有的仅仅是内容,没有修饰的情况下,它看上去就是一张白白的页面,上有一些文字和图片(这个图片是指内容中的图片,是有真实意义的图片)。这些文字图片仅仅是依次罗列下来,只有结构,没有任何样式。然后加入表现,将所有修饰的图片作为背景,用C SS来定义每一块内容的位置、字体、颜色等。
这样制作的页面才是内容与表现分离的,就是说,当你抽掉css文件,剩下的就是干净的内容。这样才能在文本浏览器中阅读,才能在手机、PDA中阅读,才能随时修改CSS实现改版。
3.不必为每块内容都建立一个id
有网友抱怨css文件太大、太复杂。仔细看他们的代码,发现原因是他们对每块内容、甚至每句话都定义一个div,建立一个ID。这一方面是对样式表应用的不熟悉,另一方面也表现出对web标准没有彻底理解。
我们知道内容都是有结构的(如果不明白,请阅读:理解表现和结构相分离 ),相同的结构的内容我们可以用同一个样式来定义,比如相同级别的标题、正文、图片。对于多次引用的样式可以用class来定义,不需要每个都用id;另外也不是说一定要用
来代替,同样都是块级元素,一样有盒模型的七个参数,
至于仅仅为了行高、间距、一个修饰图片而增加额外的div,我想随着对CSS的应用和理解,你很快就可以省略掉这些。我们反对用DIV的嵌套取代table的嵌套,这没有任何意义,不能体现内容的结构化。希望大家多研究CSS,写出最简练,最有效的样式表。
4.不要因为一点挫折就轻言放弃
我想这是一个态度和处事方法问题,这不仅仅针对学习web标准。学习任何新知识,接受新概念,都有困难,特别是需要你改变原来已有的习惯和思维时。唯一的问题就是:你认为学习web标准是否值得?你可以问问自己:你是否认可web标准带来的这些好处(简化代码、加速开发、压缩文件尺寸、提高下载速度、更好的易用性、获得更多用户、更易于维护、多平台兼容)?你是否觉得世界通用的XML离你还很远?你是否认为现在掌握的HTML知识就已经足够了?
自从99年以后,网页制作技术在国内就没有怎么进步和变革过(除了flash的兴起),而在国外前进的脚步就一直没有停止过,xhtml1.0、xhtml1.1、xml、xsl…,W3C和各大软件公司都在不断的研究和推进web技术,使它更方便、更有效、更强大。web标准的应用和推广国外已经开展了八年多(以zeldman的web标准组织网站为起点),虽然困难重重,但正在逐步被人们接受和认可。为什么我们依然陶醉在网站表面的“繁华”上,不去思考页面背后本质的东西。
你愿意中国继续落后吗?你愿意自己继续落后吗?一切决定在于你自己。
作者:阿捷 2004-7-24 14:56:36
在设计《网页设计师》页面的时候,有一个问题一直困扰着我,主菜单在IE和其他(Mozilla、Opera等)浏览器里显示的效果偏差2px。截图如下:
IE中的效果
Mozilla Firefox中的效果
这是因为IE对盒之间距离的解释的bug造成的(参考onestab的” 浮动模型的问题 “)。我一直没有解决这个问题,直到我翻译 ” 表格对决CSS–一场生死之战 “时,作者的一个技巧提示帮我找到了解决的方法:用!important。
!important是CSS1就定义的语法,作用是提高指定样式规则的应用优先权(参见:W3.org的解释)。语法格式{ sRule!important },即写在定义的最后面,例如:
box{color:red !important;}
最重要的一点是:IE一直都不支持这个语法,而其他的浏览器都支持。因此我们就可以利用这一点来分别给IE和其他浏览器不同的样式定义,例如,我们定义这样一个样式:
.colortest {
border:20px solid #60A179 !important;
border:20px solid #00F;
padding: 30px;
width : 300px;
}
在Mozilla中浏览时候,能够理解!important的优先级,因此显示#60A179的颜色:
在IE中浏览时候,不能够理解!important的优先级,因此显示#00F的颜色:
可以看到,利用!important,我们可以针对IE和非IE浏览器设置不同的样式,只要在非IE浏览器样式的后面加上!important。因此,上面提到的我的主页2px的显示差别也轻松解决:
PADDING-TOP: 11px !important;
PADDING-TOP: 9px;
!important必定成为CSS布局的利器,请记住和掌握它吧:)
作者:阿捷 2004-7-22 22:37:07
本文来自:tantek.com,也可以阅读《网站重构》第225-235页了解更多。
郭爽注:简单的说就是 ie 的width是包含padding+border的最大宽度;而mozilla 指的是不包含这些的纯内容区的宽度。
我们定义一个最基本的层:
boxtest
div.boxtest{
border:20px solid #60A179;
padding: 30px;
background : #ffc;
width : 400px;
}
标准情况下,这个盒的宽度是:20+30+300+30+20=400px。
但是在IE5.0浏览器中,对盒模型的宽度解释有个bug,它认为300 px是整个盒的总宽度,内容的宽度变成:300-20-30-20-30=200px。
为了弥补这个bug,采用一个技巧:即增加一个IE5不能解释的声音属性”voice-family”,读到这个定义时浏览器就不再继续阅读,认为宽就是400px,但而其他符合标准的浏览器会继续阅读,并执行第二个真实值300px。
content
div.content{
border:20px solid #60A179;;
padding:30px;
background: #ffc;
width :400px;
voice-family : “”}”";
voice-family :inherit;
width : 300px;
}
同样,在Opera7.0以前的浏览器也有这样的解析bug。但我们并不需要使用伪值,有更简单的办法解决这个问题: html>body .content { width :300; }
郭爽注:voice 方法不行,还是 html>body 这个可行,代码如下:在两种浏览器中宽度显示一致
[align=right][size=1][color=#cccccc][Edit on 2004-8-3 15:57:14 By guoshuang][/color][/size][/align]
作者:阿捷 2004-7-5 14:35:49
如何使DIV居中
主要的样式定义如下:
body {TEXT-ALIGN: center;}
#center { MARGIN-RIGHT: auto; MARGIN-LEFT: auto; }
说明:
首先在父级元素定义TEXT-ALIGN: center;这个的意思就是在父级元素内的内容居中;对于IE这样设定就已经可以了。但在mozilla中不能居中。解决办法就是在子元素定义时候设定时再加上“MARGIN-RIGHT: auto;MARGIN-LEFT: auto; ”
需要说明的是,如果你想用这个方法使整个页面要居中,建议不要套在一个DIV里,你可以依次拆出多个div,只要在每个拆出的div里定义MARGIN-RIGHT: auto;MARGIN-LEFT: auto; 就可以了。
如何使图片在DIV 中垂直居中
用背景的方法。举例:
body{BACKGROUND: url(http://www.w3cn.org/style/001/logo_w3cn_194×79.gif) #FFF no-repeat center;}
关键就是最后的center,这个参数定义图片的位置。还可以写成“top left”(左上角)或者”bottom right”等,也可以直接写数值”50 30″
效果如下:
如何使文本在DIV中垂直居中
如果是文字,便不能用背景方法,可以用增高行距的办法变通实现垂直居中,完整代码如下:
test content
说明:
vertical-align:middle;表示行内垂直居中,我们将行距增加到和整个DIV一样高line-height:200px;然后插入文字,就垂直居中了。
[align=right][size=1][color=#cccccc][Edit on 2004-8-3 15:43:10 By guoshuang][/color][/size][/align][align=right][size=1][color=#cccccc][Edit on 2004-8-3 15:43:36 By guoshuang][/color][/size][/align]