posts - 138, comments - 1881, trackbacks - 97, articles - 13
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

根本不存在 DIV + CSS 布局这回事

Posted on 2007-04-09 22:29 Cat Chen 阅读(25820) 评论(110)  编辑 收藏 网摘 所属分类: WebCSS

在《欲练 CSS ,必先宫 IE》和《你有 <table /> 强迫症吗?》这两篇文章中,看到有不少评论用到div+CSS布局这个说法,用来和table布局比较。实际上div不是用来布局的,div只是用来表示一个其它元素都无法准确表达语意的一个块区,只有CSS是用于布局的,所以根本就不存在div+CSS布局这回事。反过来,table布局的时候经常依赖于CSS定义一个单元格的布局属性,所以可以说是table+CSS布局。也就是说,我们讨论的两种主流布局方法应该是纯CSS布局和table+CSS布局,如果你觉得你在用的是div+CSS布局,那么有可能你也有强迫症了。

接下来我们说说如何进行纯CSS布局,因为CSS布局依赖于XHTML,所以我们先要说说如何书写一个CSS无关的XHTML。其实书写CSS无关的XHTML并不难,虽然你不能再好像书写table布局代码那样集中精力于最重的视觉效果上,但其难度也不过是中学生写作文那样。

中学生写作文如何写呢?首先看看题目,然后想想整篇文章分为哪几个大的段落,每个大的段落说些什么,能够把你要说的东西说清楚。对于XHTML来说,这相当于用div把文档切割为几大块。这时候你不要想着这些div将构建一个怎样的DOM啊、CSS如何选择DOM中元素设置规则实现布局之类的事情,就大概划分一下文档的大区域就好了。

然后当然是用一些常用的手法来表现感情或者论证问题,这在XHTML中就是用特定的元素来完成一些常见的信息组织。下面就是信息组织形式与元素的对应列表。

img

作为内容的图片是一定要放到img里面的,这没有更好的选择了。然而如果图片不是作为内容,而是作为修饰性的,则千万不要用img。对于非内容的图片,应该在CSS中引用,而不在XHTML中出现。例如每一个导航链接有一个前导的箭头指示,那么这些箭头就应该通过CSS的background-image属性加上去,而不是直接作为img出现。

a

这也是一个非常准确定义的元素,链接都需要使用它。或许已经有很多人忘记了a的本意是锚点,其实这是一个十分有用的语义,你可以用它来标记文档中一些重要的引用位置。

ul, ol

ul和ol分别是什么意思呢?如果你回答不上来,却知道它们可以用来干什么,那证明你是被可视化工具宠坏了,要转换过来编写符合语义的XHTML需要先补充基础知识,这时候你最好先找一些看起来非常基础非常全面的XHTML书籍看看,因为没有扎实的基础你在上面构建更多的知识都是不牢固的。ul和ol其实分别代表unordered list和ordered list,也就是无序列表和有序列表。在语义上,它们都用于表示一类并列关系的内容,例如我们去商店购物之前列一张shopping list,上面要买的东西就是并列关系,在中文可以用顿号隔开那种。它们的差别在于是否有顺序,例如shopping list是没顺序的,先买什么后买什么是没关系的,但是一份旅游行程安排上面的景点列表却是有游览的先后顺序的。

ul常用于导航栏,因为导航元素符合上面所说的并列关系,树状导航结构还可以通过嵌套ul来表述。在这里,导航可以是我们常见的水平或竖直导航栏,甚至可以是地图导航,例如在中国地图上不同的省份热区其实是不同的li。如果我说,在主流浏览器上用户看到了中国地图和可以直接点击省份热区,在不支持CSS的浏览器上用户能看到一份纯文本的省份名称列表,使用的是同一份XHTML,而这完全通过CSS实现,甚至不依赖于JavaScript,你相信吗?

另外,如果你要显示一个图库的缩略图,这些图片也可以放在ul中哦,因为这些图片也是并列关系。它们可以自动先横排,排满一行就自动排第二行,CSS可以让他们乖乖排队,而不需好像table那样把图片定死在一个格子里。其实table用于布局就如同用监狱关押内容一样,把内容锁死在一个格子里不让它到处乱跑;符合语义的XHTML就如同一个开放的舞台,你只要懂得利用CSS的规则,内容就自然会找一个适合表现自己的地方站着。

dl

没有听说过dl吗?因为那些可视化工具生成的代码中从来不会出现dl?dl的意思是definition list,也就是定义列表。它包含的子元素不是li,而是dt和dd,也就是definition term和definition description。dl本身设计为字典单词与解释列表这样的语义,例如:
<dl>
  <dt>Apple</dt>
  <dd>苹果</dd>
  <dt>Boy</dt>
  <dd>男孩</dd>
</dl>

然而,如果你需要表示的的语义也是类似的,一个列表既包含定义也包含解释,那么也可以考虑用dl。

form, input

form也就是表单啦,这没什么好说的,就算再不顾及语义的人在书写XHTML时也会考虑到它与各种input对提交数据的影响,从而小心谨慎。

table

table自然是用来表示表格的,这不废话!如果是数据表,当然可以用table来表示,但如果不是,就最好别用table了。

人名列表呢?例如一个3行4列的人名列表。如果这12个人名是并列关系,我建议你用ul和12个li来表示,再通过CSS来让它们在一行内并列显示多个。名片表呢?也就是3行8列,每两列中左侧一列显示人名右侧一列显示电话地址等联系方式。我觉得dl在一定程度上能满足此需求,dt放人名,dd放联系方式,不过这时候就涉及了dl滥用的争论,因为人名与联系方式当作定义与解释有点牵强。

接下来还有一个关于你是否系统学习过XHTML的小提问,那就是你是否知道table下面的caption、col、colgroup、thead、tbody、tfoot元素及summary属性分别用于定义什么,还有就是你书写table时是否会使用thead、tbody。

div, span

再次审阅上面的列表,如果你需要表示一个块区却无法在上面找到更适合的元素,那么你就可以考虑使用div和span这两个最没有语义的元素了。div与span的区别,历史上的不说了,现在通常大块的区域用div,行内的小文本片段就用span。在上面我已经说了div一般用于全局划分为几个大的区域,所以一般不需要使用了。span其实也很少使用,因为行内的强调通常可以用语义更强的元素例如strong和em。

在理解上上述那么多常用元素后,写一个XHTML就真的如同中学生写作文一样容易啦,还是搭积木那样,其实和以前使用可使化工具搭积木没什么不同,唯一不同是现在你理解了你在搭的是什么,而以前你只在乎搭出你想要的视觉效果来。写代码与写作文所类似的地方,就在于你写得越多就越熟练,也就越能写出好东西来。在写好XHTML后我们就要开始考虑如何写CSS了,或许还需要在XHTML中略作修改以方便CSS中规则的选择与匹配,不过这是以后再说的内容了,今天就说到这里。

最后,如果你有兴趣阅读我以后发表的有关CSS的文章,可以考虑订阅我的blog:

Feedback

#1楼    回复  引用    

2007-04-09 22:58 by gflmpx [未注册用户]
写得很好!!!!!

#2楼 [楼主]   回复  引用  查看    

2007-04-09 23:01 by Cat Chen      
@gflmpx
谢谢!

#3楼    回复  引用  查看    

2007-04-09 23:03 by iCaca      
支持 btw Feedback下面用的字体是 微软雅黑?

#4楼    回复  引用  查看    

2007-04-09 23:05 by iCaca      
 

#5楼 [楼主]   回复  引用  查看    

2007-04-09 23:07 by Cat Chen      
@iCaca
评论的标题行确实是雅黑,后备字体是黑体。

#6楼    回复  引用  查看    

2007-04-09 23:09 by Clark Zheng      
学习了

#7楼    回复  引用  查看    

2007-04-09 23:11 by iCaca      
@Cat Chen
^^ 早些休息~

#8楼 [楼主]   回复  引用  查看    

2007-04-09 23:18 by Cat Chen      
@iCaca
谢谢关心哦~

之前一直有感冒,一直没多少时间能够对着电脑写东西的,现在稍微好一些了。

#9楼    回复  引用  查看    

2007-04-09 23:33 by wingoo      
正迷糊这个呢...
:)

#10楼    回复  引用  查看    

2007-04-10 08:34 by kiler      
我觉得程序员没有必要关注html的标准,这些东西最终能不能普及主要是看网页设计工具是否支持,毕竟大部分页面不是由程序员做的,我们的工作只是改页面。

#11楼    回复  引用  查看    

2007-04-10 08:57 by 非我      
不关注可不行,做web开发这可是基础中的基础

#12楼    回复  引用  查看    

2007-04-10 09:08 by Anders Cui      
嗯,很不错!
要做到像写作文那样去写(X)HTML代码
同时还要彻底忘记这些作文以何种方式打印

#13楼    回复  引用  查看    

2007-04-10 09:26 by 轻剑傲风      
对,就是这样,像写作文那样,不管打印方式

#14楼    回复  引用    

2007-04-10 09:33 by peng [未注册用户]
to kiler
估计你都不是做B/S开发的吧
现在国内的美工差不多都是做一张静态的JPG,页面上的东东都得要程序员去实现,说实话,蛮烦的

#15楼    回复  引用  查看    

2007-04-10 09:33 by 数据绑定者      
@Cat Chen
我可以转载么?写的不错。

#16楼    回复  引用  查看    

2007-04-10 09:38 by sekihin      
收藏之。。。。
慢慢品

#17楼    回复  引用  查看    

2007-04-10 09:41 by e表      
有深度!! 不错. (纯.net写的web报表开发工具在: http://www.fcsoft.com.cn/webreport.htm )

#18楼    回复  引用  查看    

2007-04-10 09:54 by Confach      
赞一个,本质讲到了。很多都是IDE惹得货呀

#19楼    回复  引用  查看    

2007-04-10 10:43 by 星宿.NET      
受教了,楼主的内容很好

#20楼    回复  引用  查看    

2007-04-10 10:53 by 钢盅郭子      
想当年Dreamweaver得势的时候,谁都没有预料到今天返璞归真的局面啊

从某种意义上讲,似乎FrontPage更遵循HTML规范呢

#21楼    回复  引用  查看    

2007-04-10 10:59 by 数据绑定者      
FrontPage生成一大堆<center><b>等过时标签,现在最合乎规范的是Expression Web Designer

#22楼 [楼主]   回复  引用  查看    

2007-04-10 11:11 by Cat Chen      
@kiler
除非你的美工真的把所有页面都输出为标准XHTML给你吧,否则你拿着一份XHTML模板,然后改的时候也可能把XHTML改乱了,之后无论如何也做不到你要的效果,也无法改回去。这种情况经常发生在那些连HTML都没学好的ASP新手身上,他们即使拿着HTML去加<% %>也会导致页面面目全非。所以扎实的XHTML基础还是有必要的。

#23楼 [楼主]   回复  引用  查看    

2007-04-10 11:13 by Cat Chen      
@peng
对啊,不知道这是国情还是全世界都这样呢,美工负责的就只是jpg,如果他在psd上都给上标尺以方便你计算px或者%那已经很好的了。

#24楼 [楼主]   回复  引用  查看    

2007-04-10 11:16 by Cat Chen      
@数据绑定者
可以转载,我的文章都使用Creative Common许可,请参考:
http://creativecommons.org/licenses/by-nc-sa/3.0/

你记得留一个链接指向原文或者指向我的blog就行了。

#25楼 [楼主]   回复  引用  查看    

2007-04-10 11:19 by Cat Chen      
@钢盅郭子
看完《程序员修炼之道》后,我就一直反对DreamWeaver,特别是DreamWeaver再加上一大堆第三方的特效插件。

书里面写道,不要使用那些你不知道引起什么变化的向导,而DreamWeaver正是生成了大量代码而不用你知道这些代码到底是干什么的。我不反对代码生成器,但前提是你确确实实知道这些代码是干什么的,你自己也写得出等效代码,而不是看着代码生成器的结果来猜它们是干什么的。

#26楼 [楼主]   回复  引用  查看    

2007-04-10 11:21 by Cat Chen      
@数据绑定者
低版本的FrontPage比较多这些问题,高版本的话,如果你把它当作一个带IntelliSense的文本编辑器,其实还是很好用的。就算是Expression Web Design,要写好的XHTML也是要手写吧。

我向来是习惯借助IntelliSense来写XHTML,然后再切换到split视图来看看效果是否有什么问题,接着慢慢加style。

#27楼    回复  引用  查看    

2007-04-10 11:24 by henry      
我们现在把裸页的程序完成后就全完由美工去完成剩下的事情了.

#28楼    回复  引用  查看    

2007-04-10 11:24 by Jeffrey Zhao      
@Cat Chen
如果是给一份设计稿倒好了,据我了解其实国内很多地方都是美工已经帮你布好局了——比如用table,然后开发人员填写内容。

#29楼    回复  引用    

2007-04-10 11:28 by A.Z [未注册用户]
html本质决定了它会有一个很繁杂的标准,现在很多人都扑到asp.net上,其中有些人不停的在谈对象、服务器编程,却只认web namespace下面的对象,对.net整体架构理解混乱。个人认为网页编程的起点是html的驾驭能力,lz的文章必顶。

#30楼    回复  引用  查看    

2007-04-10 11:28 by 数据绑定者      
@Cat Chen
Expression Web Design通过设计器设计出来的样式,也是遵循标准的~省了很多手写的麻烦。

#31楼 [楼主]   回复  引用  查看    

2007-04-10 11:46 by Cat Chen      
@Jeffrey Zhao
这时候你可以把table排版当作一张jpg,重做XHTML+CSS的,我就试过这样。

#32楼 [楼主]   回复  引用  查看    

2007-04-10 11:47 by Cat Chen      
@A.Z
谢谢~

#33楼 [楼主]   回复  引用  查看    

2007-04-10 11:49 by Cat Chen      
@数据绑定者
其实CSS最好也是手写,当你需要用hacks时就只能手写了。Expression Web Design唯一帮忙的地方就是你能看到一个元素的CSS是如何继承下来的,哪些规则覆盖了哪些规则。

#34楼    回复  引用  查看    

2007-04-10 12:02 by Wisdom-zh      
极好, 支持.
我也是不用设计器的, 有些技巧学了有用啊.

#35楼    回复  引用  查看    

2007-04-10 12:09 by 生米煮成稀饭      
很通俗易懂,建议多一些xhtml各个元素的讲解于用途

#36楼    回复  引用  查看    

2007-04-10 12:12 by 随风流月      
@Cat Chen
非常好。
请问您有 MSN 吗?

#37楼 [楼主]   回复  引用  查看    

2007-04-10 12:34 by Cat Chen      
@生米煮成稀饭
如果详细讲解XHTML的话,我建议大家还是买书看咯,例如O'Reilly的《HTML与XHTML权威指南》。

写这些文章的目标,是为了让初入门学习或者学习中感到迷茫的人找到下一步的目标,知道自己缺什么然后可以找有关的资料来补充。书上已经有的详细资料,我觉得我没必要重复,大家去买书看就行了。

#38楼 [楼主]   回复  引用  查看    

2007-04-10 12:35 by Cat Chen      
@随风流月
有,你发私人信息给我,然后我直接回邮件给你,你就知道了。

#39楼    回复  引用  查看    

2007-04-10 12:38 by kiler      
@peng

你没有理解我的意思,我的意思是说,程序不需要关注html的那些标准,就是比方说是页面是用table布局还是用div来布局,不是说程序员可以不懂html语言,这个都不懂就别做bs开发了,实际项目中应该由美工做一个大的静态图片出来,然后切成一个页面再给我们,我们要做的事情就是把改加的代码和标签加进去就行,页面用table布局还是用div来布局我们不用管,而且我们也管不了,你把页面布局方式由table布局改成了div布局的话,那美工就没有改页面了,页面html该怎么写我们没有决定权,页面html布局采用什么样的方式是由美工使用的网页设计工具决定的,美工用DreamWeaver那么页面布局DreamWeaver那种html方式来布局,我们的项目里面用什么XHTML规范,其实可以说是由DreamWeaver来决定的,因为大部分美工都用DreamWeaver来做页面。

@Cat Chen

不管美工给我什么页面,我都只会做很小的修改,比方说嵌入一些服务器端标签
,加上一些js,至于html是用table布局还是div布局,或者说他的html代码写的很烂不符合什么什么XHTML规范,我都不管,我只加入我需要的东西就ok了,改美工实在没有必要,你好不容易改好了,说不定那天他有给你改回去了,转来转去太麻烦。程序员对html应用就是能读能写就ok了,但是不需要你用来写出好看的页面。

#40楼    回复  引用  查看    

2007-04-10 12:58 by 深蓝      
好文章,赞一个

#41楼    回复  引用  查看    

2007-04-10 13:57 by 钢盅郭子      
btw
我现在倾向于用dl输出“搜索结果列表”

原因只有一个:dl(dt,dd)只有2层,而table(tr,td)有3(算上tbody就是4)层

:P

#42楼    回复  引用  查看    

2007-04-10 14:13 by WOW玩家      
div是一个区域,css是用来设计样式的.在页面设计的时候,如果你不用div设计框架,那你只能用table了.所以我认为div+css布局的说法是正确的.

#43楼    回复  引用  查看    

2007-04-10 18:28 by 随心所欲      
写的不错。

#44楼    回复  引用    

2007-04-10 20:04 by Roach [未注册用户]
做交互的应该什么样的布局都熟练.都没错.混合使用效果更佳

#45楼 [楼主]   回复  引用  查看    

2007-04-10 20:16 by Cat Chen      
@WOW玩家
我们所说的布局确实通常就指框架部分,所以都是div,然后如果直接说div+css则很容易让一些入门者误入歧途,以为什么都是用div来表示,从而忽略了上述的其它元素。实际上div和span都应该仅在没有更适合的选择时使用。

#46楼    回复  引用    

2007-04-10 21:32 by sty [未注册用户]
《根本不存在DIV + CSS 布局这回事〉〉,什么叫不存在,有什么不存在,这只是一种很好的页面布局方法,某些要求只有div+css可以实现,table无能为力//。

#47楼 [楼主]   回复  引用  查看    

2007-04-10 21:37 by Cat Chen      
@sty
你回复的好像只是标题吧……

#48楼    回复  引用  查看    

2007-04-11 00:12 by deerchao      
@Cat Chen
事实上存在不存在,理论上是不是应该存在是两个不同的命题。

在制作XHTML时完全不考虑布局,至少在目前是不太可能的,除非页面布局比较清晰明了,否则像新浪首页那样复杂的页面几乎是不可能做出来的——在跨浏览器的前提下。

Web Standards当然很好,但它不是一个革命,而是一种进化,人们(设计者,浏览器开发者,甚至标准制定者)总要一步步地去学习,接受,使用它,一次到位不是不可能,而是代价太高昂。

而且,在中国,我怀疑在(X)HTML,语意化真正地成为主流之前,Web已经抛弃了它,转向了下一代的平台(比如XAML, XUL, Flash等)。

——一个70%实用主义+30%理想主义的程序员

#49楼    回复  引用    

2007-04-11 07:31 by jeffer [未注册用户]
俺们一般叫 XHTML+CSS , 不叫 DIV+CSS。DIV+CSS是刚开始抛弃表格布局的叫法。3年前吧

#50楼    回复  引用    

2007-04-11 09:53 by 外人 [未注册用户]
div+css和table+css有着明显的区别,首先一点是table嵌套多了之后是很占用页面载入时间的,div是要快些,第二table是有局限的,比如一个块的拖动,这个是现在很流行的做法感觉效果很吸引人,还有在用到ajax做无缝提交的时候用div是很方便的,

#51楼    回复  引用    

2007-04-11 10:56 by pumaboyd [未注册用户]
同意这个观点。div 也好,table也好,看设计时候的需要

#52楼    回复  引用    

2007-04-11 12:50 by zengdj [未注册用户]
答非所问,标题与内容完全不匹配,不知道你到底想说什么,还不如小学生写作文呢

#53楼 [楼主]   回复  引用  查看    

2007-04-11 20:39 by Cat Chen      
@zengdj
我想说的是,做CSS布局不要仅盯着div,这世界上不是只有div能够搭配CSS。很多人随口就说div+CSS,导致很多人整个XHTML中只用div,这是错误的,我们应该优先考虑更有语意的元素。

#54楼    回复  引用    

2007-04-15 20:47 by lollipop [未注册用户]
正确的提法是xhtml+css,而不是div+css或table+css

#55楼    回复  引用    

2007-04-26 12:25 by 博联人才网 [未注册用户]
你好!我是北京博联四海信息技术有限公司,我公司专业从事技术类博客经纪人业务。通过一段时间的跟踪记录,觉得您的博客很有开发价值,所以愿意为您的博客做专职经纪人,不需要您投入任何资金,帮助您获得IT技术类招聘及IT书籍类广告收入,与同类博客广告相比收入回报率最高,你所得收入会按月汇入您指定银行账户中。
同时,为增加您的博客点击量和开发价值,我公司将为您提供免费的博客推广业务。
有关签约的详细事宜请与我公司联络。(www.bolianhr.com)
联系人:宋薇 (博客经纪人) 公司电话:010-82908071(9:00-18:30)
手机:13522063599
E-mail:songwei@bolianhr.com QQ:545305476
MSN:mllsongw@hotmail.com
衷心欢迎您加入到“博联四海”专业IT件技术人才招聘平台中来。期待您的回复。

#56楼    回复  引用    

2007-05-21 15:14 by sunlion [未注册用户]
楼主阐述的很是经典。我是做php的,虽然对一直一来喊的很响的div+css没有很深刻的认识,但是。毕竟我也做页面,也研究过大旗等站的源码。div的优势目前似乎比较明了,但是,纯粹去用层来布局和层中嵌套表格来做布局到底哪个更快?哪个更容易被爬虫爬到?等等,似乎也并没有个定数。同意该观点,不存在div+css布局。不过,dreamweaver似乎升级的太慢了点.....讨厌规划布局跟写后台似的....麻烦...

#57楼    回复  引用    

2007-06-05 11:10 by 擦擦洗洗 [未注册用户]
写得确实有魄力,够深度。我已经将它转载至:http://www.zx100.com/article.asp?id=485.html

#58楼 [楼主]   回复  引用  查看    

2007-06-05 22:58 by Cat Chen      
@擦擦洗洗
请保留指向原文的链接,或者指向此blog首页的链接,谢谢。

#59楼    回复  引用    

2007-06-06 01:42 by 怪怪 [未注册用户]
呵呵Cat Chen也变标题党了~~,小小的B4一下先 ^_^

#60楼 [楼主]   回复  引用  查看    

2007-06-06 07:34 by Cat Chen      
@怪怪
标题嘛,有一点点实验性质啦,不过只要你进来之后觉得内容是有价值的就不会觉得被骗进来啦。

#61楼    回复  引用    

2007-06-12 19:12 by 传奇私服 [未注册用户]
顶 楼猪写的好啊

#62楼    回复  引用  查看    

2007-06-14 11:01 by Anthan      
希望有个实例啊,或者搞个图,要不这样文章就很容易被人引到争论而不是探讨中去了。

#63楼    回复  引用    

2007-06-28 11:18 by zz [未注册用户]
Div + Css 是存在这个概念的,最大的好处是用DIv不用象Table那样全部加灾完,并且难道你能用Css控制Table的随意位置吗?如果不行 那么Talbe就会产生大量的嵌套,这样页面加载时就会慢了

#64楼    回复  引用  查看    

2007-07-02 14:42 by asboy      
哈哈 通俗易懂 童叟无欺 不错 就觉得用table布局比较快 现在人家都趋势了也没办法 美工程序都要一个人做的 什么乱七八糟的都要学

#65楼    回复  引用    

2007-07-23 21:02 by 火星楼主 [未注册用户]
坚定完毕楼主是火星人....
SB 一个!!!!@

什么叫 根本不存在 DIV + CSS 布局这回事

自己去
Http://www.163.com
Http://www.heike.Hk/soft
从大网站到小网站还有哪个不是用DIV+CSS?
就你SB 说不可能
还要在这里欺骗群众...
骗新手你觉得很好玩是吗?
弱智.... 什么智商.. 别人都做到了 你还要说不可能.
SB 害群之马 严重 阻碍中国互联网事业发展 ...
做为中国人 鄙视你 .
估计你是 日本人派来的间谍吧..!!!
头脑有毛病 发这样的文章 !!@

#66楼    回复  引用    

2007-07-23 21:06 by 同意楼上的 [未注册用户]
楼主是火星人

到了地球没见过世面

table+CSS 已经是历史了

是过去的事 那时候 大家技术都不好

都不会

现在这个年代

如果再提 table+CSS

就是低人一等了

哎! 毒害了多少 新人啊

无语中

汗ing

#67楼 [楼主]   回复  引用  查看    

2007-07-24 01:03 by Cat Chen      
@火星楼主
@同意楼上的
请阅读完文章正文后再作评论,谢谢!

#68楼    回复  引用  查看    

2007-07-24 09:19 by 钢盅郭子      
这2位……
还是看了全文内容再做评论吧

话说回来,Cat有点标题党的嫌疑,哈哈

#69楼    回复  引用    

2007-07-24 11:42 by 同意楼上的 [未注册用户]
这两个网站都做到了
DIV+CSS
Http://www.163.com
Http://www.heike.Hk/soft
啊..
没错啊
楼主为什么说不可能做到呢?

#70楼 [楼主]   回复  引用  查看    

2007-07-24 11:56 by Cat Chen      
@同意楼上的
我没有说做不到,我说的是div+css是一个不太正确的名字,正确的名字应该是xhtml+css,而div只是xhtml中的一种元素而已,如果完全只用div而不用其他更加符合语义的元素,那就和可能造成div滥用,导致的后果其实和table滥用没什么区别。

#71楼    回复  引用    

2007-08-03 17:43 by wl [未注册用户]
学习了

#72楼    回复  引用    

2007-08-04 16:27 by 匿名 [未注册用户]
Div+CSS只是一种布局标准,而xhtml+css是一种Web标准。Div+css使用正确时可以在任何浏览器上正常显示,而Table却不行......

#73楼    回复  引用    

2007-09-11 18:48 by catge [未注册用户]
汗,就这标题就把我从google那边吸引过来了。。
不看完内容还真是容易误会的说。

#74楼 [楼主]   回复  引用  查看    

2007-09-11 21:59 by Cat Chen      
@catge
看来标题还是有一定吸引力的,哈哈。

#75楼    回复  引用    

2007-11-01 22:56 by qqqqqq [未注册用户]
扯淡

#76楼    回复  引用    

2007-11-09 00:46 by 不错呀 [未注册用户]
大受启发

#77楼    回复  引用    

2007-11-13 21:12 by 游牧 [未注册用户]
感谢cat的文章,我刚开始学习css,在这方面比较差,今天连续看了你博客里的文章,还是有很大收获的,谢谢你的分享。

#78楼    回复  引用  查看    

2007-12-25 20:49 by 蛙蛙池塘      
很好,看了一遍

#79楼    回复  引用    

2008-03-25 18:05 by Jo [未注册用户]
啊啊啊啊~~~~居然被我找到這裡了~~~~
話說是在某個人的博客上返回到cnblogs首頁
然後在排名list上掃視的時候看到你的名字……
而且此博內容真豐富……
我是CSS菜菜子,所以訂閱學習了>o<

ps.cat同學寫文章的感覺好像大人啊……
就是那種網上常見的二十幾歲工作了好多年的人……

#80楼 [楼主]   回复  引用  查看    

2008-03-26 01:42 by Cat Chen      
@Jo
竟然被你找到这里来了……

#81楼    回复  引用    

2008-03-27 23:29 by Billy Fan [未注册用户]
不错不错,大受启发,楼主讲的很有道理啊~~~~~~

我就是典型的被div+css的说法残害了的~~~~~~

最近才刚从table转过来,结果写的东西里面就只有div,

以后要多考虑一下有语意的标签了~~~~

#82楼    回复  引用    

2008-03-28 23:33 by 正文 [未注册用户]
xhtml + css + javascript ^^

#83楼    回复  引用    

2008-04-25 10:14 by sliz [未注册用户]
谢谢,写的不错,学习中,感觉 dw太不好用了,还不如 手写代码方便。

#84楼    回复  引用  查看    

2008-05-07 21:09 by 簡簡單單..      
Mark

#85楼    回复  引用  查看    

2008-05-31 01:43 by 枫子      
好东西啊

#86楼    回复  引用  查看    

2008-07-25 22:49 by zwicker      
最近看了css the missing manual 感觉楼主这标题实在有问题。div+css主要功能还是用来布局的,而table反而是用来显示数据的,它的本意并不是用来布局。纠正楼主的观点,谢谢。

#87楼 [楼主]   回复  引用  查看    

2008-07-25 23:28 by Cat Chen      
@zwicker
没有任何HTML元素是用来布局的,所有元素都是用来表示语义的,只有CSS才是用来布局的。所以,无论说table布局,还是说div布局,都是错误的。

#88楼    回复  引用    

2008-08-15 16:32 by 老少 [未注册用户]
感觉div+css是一种趋势,假如说不存在,为什么大家都用,不管如何,楼主的标题是惊人之语!吸引了大量的眼球!

#89楼 [楼主]   回复  引用  查看    

2008-08-15 16:47 by Cat Chen      
@老少
请参考你楼上我的回复来理解标题。

#90楼    回复  引用    

2008-08-18 16:49 by jimmy667 [未注册用户]
搞不懂作者为什么起这么一个有点哗众取宠的标题。
你所谓的XHTML众多用来表现的标记,是否都和布局有关系。
你提到的IMG,FORM,INPUT是否都是布局的必要元素。
所以你如果说 根本 不存在DIV+CSS布局,我觉得不妥,如果是单纯讲布局,DIV+CSS完全可以实现。

#91楼 [楼主]   回复  引用  查看    

2008-08-18 17:19 by Cat Chen      
@jimmy667
我的意思是,它们都不是布局元素,没有一个元素是用于布局的,只有CSS是用于布局的。

#92楼    回复  引用    

2008-08-19 10:17 by jimmy667 [未注册用户]
@Cat Chen
你的意思是标题应该为
1.根本不存在DIV+CSS布局这回事
2.看我如何用纯CSS来布局
3.CSS布局依赖于XHTML
4.DIV是XHTML中的一个标记
以上几点你自己总结一下看看

#93楼 [楼主]   回复  引用  查看    

2008-08-19 11:05 by Cat Chen      
@jimmy667
是的,div只是一个标签,而且是语义最不精确的一个标签,所以能用更精确语义的标签时就应该避免使用div。

#94楼    回复  引用    

2008-08-21 11:16 by 路过而已 [未注册用户]
这么冲动! 写这样的标题不知道是钻牛角尖,还是是为了增加浏览量?

#95楼 [楼主]   回复  引用  查看    

2008-08-21 12:21 by Cat Chen      
@路过而已
请仔细阅读文章及评论后再发表看法,谢谢。

#96楼    回复  引用    

2008-09-07 23:14 by 枫子12 [未注册用户]
好文章

#97楼    回复  引用    

2008-09-15 11:47 by awei2 [未注册用户]
作者有点钻到标准的套子里了,标准固然是好东西,但是标准也是人造出来的,如果一个定义好的标准没有人去使用,没有市场,那这个标准有他的意义么?这也是为什么很多所谓技术呆子不解的地方,你有一个祖传的秘方但是就是藏在家里没人知道那又有何用,现在秘方这东西放的时间越长越不值钱,反而不一定好的东西经过市场的洗礼变成了最好的东西。
其实慢慢的我们国内也会越来越分工明确了,标准这东西交给开发公司吧,就好比现在做信息工程的程序员,不用太多考虑控件是如何编写的,只用知道如何灵活的使用这个控件而已。

#98楼    回复  引用    

2008-10-04 12:57 by 美工 [未注册用户]
这种用css布局的网站适用于一般的网站,要是让美工设计个有点特点的网站这些都不适用了

#99楼 [楼主]   回复  引用  查看    

2008-10-04 13:02 by Cat Chen      
@美工
任何设计都能把语义抽离为HTML,并用CSS实现布局。如果有做不到的,大多数情况下是你还没完全掌握CSS所导致的。

#100楼    回复  引用    

2008-10-16 23:25 by yzy2yyy [未注册用户]
G.cn过来的...看看...
"DIV+CSS布局"是不是可以理解为" 'DIV' + 'CSS布局' "..这样断句???
这样断就没问题了嘛..噶

#101楼 [楼主]   回复  引用  查看    

2008-10-16 23:49 by Cat Chen      
@yzy2yyy
这样就是“CSS布局”啊,前面一个DIV不觉得很多余吗?

#102楼    回复  引用    

2008-10-18 20:03 by hs hs [未注册用户]
好标题
好内容
好耐心
好人

#103楼    回复  引用    

2008-11-16 08:42 by dsrtr [未注册用户]
这个标题 有点故弄玄虚

#104楼    回复  引用  查看    

2008-11-18 13:53 by 棕熊      
陈猫gg, 更正一个错误,一个dl里只能有一个dt,但是可以有多个dd,所以那个得写成
<dl>
<dt>Apple</dt>
<dd>苹果</dd>
<dl>
</dl>
<dt>Boy</dt>
<dd>男孩</dd>
</dl>
@@
- -!! 同感, 这个标题有点故弄玄虚.. DIV+CSS只是被缩小化了.. 不能说不存在吧? 它只是XHTML+ CSS里的一个小分支而已..
对于table+CSS布局, 个人感觉同样XHTML+CSS有相同效果下,采取后者..
如全在大量表格的情况下, 考虑table+CSS布局, ..

#106楼    回复  引用    

2009-01-08 09:39 by 你是SB [未注册用户]
你给我滚犊子!你别用奥!

#107楼    回复  引用    

2009-02-14 11:38 by alexander [未注册用户]
使用table使代码冗长,表单设置困难,不易阅读
使用DIV,简化代码,有布局功能,所以请作者不要耍聪明了

#108楼    回复  引用    

2009-02-24 10:54 by 游客9527 [未注册用户]
DIV+CSS布局是指:用DIV做基本容器,再用CSS对其进行格式化和布局。
理解时断句:DIV+(CSS布局)
因此DIV+CSS布局这一说法是没有任何问题的,楼主可能是把“DIV+CSS布局”理解成“(DIV+CSS)布局”了,所以是楼主断句断错了。

不过你写的内容很不错。

踩一个,也躜一个!

#109楼 [楼主]   回复  引用  查看    

2009-02-24 11:27 by Cat Chen      
@游客9527
挺新颖的观点,嘿嘿~

#110楼    回复  引用    

2009-05-07 04:37 by xlnv [未注册用户]
很好收藏了

发表评论



姓名 [登录] [注册] 
主页
Email (仅博主可见) 
验证码 *  验证码看不清,换一张
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论   新用户注册   返回页首      

导航: 网站首页 社区 新闻 博问 闪存 网摘 招聘 .NET频道 知识库 找找看 Google站内搜索



China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
China-Pub 计算机绝版图书按需印刷服务

相关文章:

相关链接: