今天在瀚海上对于一个问题的回帖,整�一下,都是我的个人�解,�当之处一起探讨。
网页è¦?表达的内容就是信æ?¯ï¼Œæ¯”å¦‚ä½ è¦?呈现的文å—ã€?图片ã€?多媒体ç‰ä¿¡æ?¯ï¼Œç»“构就是这些内容的方å¼?,表现就是CSS,行为就是DOM,JavaScriptç‰ã€‚
所以通俗点说,HTML就是结构。
由于HTML的开放性,结构å?¯ä»¥æœ‰å¾ˆå¤šç§?,最终呈现在用户é?¢å‰?å?Œæ ·çš„内容,其HTML结构å?´å?¯ä»¥å¤šç§?å¤šæ ·ï¼Œè€Œå¥½çš„HTML是“结构化â€?的,也就是有æ?¡ç?†çš„,基于è¯ä¹‰çš„。比如<p>表示一个段è?½ï¼Œ<h3>è¡¨ç¤ºä¸€ä¸ªä¸‰çº§æ ‡é¢˜ï¼Œ<address>表示一个地å?€ç‰ç‰ã€‚而以å‰?用tableå¸ƒå±€å¾ˆå¤§ç¨‹åº¦ä¸Šç ´å??了这ç§?è¯ä¹‰çš„è¦?求,充斥在整篇文档ä¸çš„table,tr,tdæ ‡ç¾å°±ä¸?是结构化的,他们的出现是没有æ„?义的,纯粹是为了布局的需è¦?。类似的还有<font>,<b>æ ‡ç¾ç‰ï¼Œè¿™äº›éƒ½æ˜¯æ²¡æœ‰ç»“æž„æ„?ä¹‰è€Œçº¯ç²¹ä¸ºäº†æ ·å¼?而å˜åœ¨çš„æ ‡ç¾ã€‚
现在æ??倡的HTMLå†™æ³•æ˜¯æ ‡ç¾è¦?言之有物,ä¸?è¦?è¯?ä¸?è¾¾æ„?,也就是用什么和怎么用的问题。比如<b>就属于ä¸?è¯¥ç”¨çš„æ ‡ç¾ï¼Œå› 为它ä¸?表示任何结构,我们ä¸?知é?“它里é?¢æ˜¯ä»€ä¹ˆä¸œè¥¿ï¼Œå?ªçŸ¥é?“å®ƒè¡¨ç¤ºâ€œåŠ ç²—â€?ï¼Œä½†åŠ ç²—æ˜¯CSS也就是表现层é?¢çš„ä¸œè¥¿ï¼Œè¿™å±žäºŽâ€œè¨€ä¹‹æ— ç‰©â€?ã€‚è€Œå¦‚æžœå°†ä¸€ä¸ªæœ¬æ˜¯æ ‡é¢˜çš„å†…å®¹ç”¨<p>括起æ?¥ä¹Ÿæ˜¯é?žç»“构化的,这属于“è¯?ä¸?è¾¾æ„?â€?。
关于<div>(以å?Š<span>),它是一个没有特定æ„?义å?ªæœ‰æ™®é€‚æ„?ä¹‰çš„æ ‡ç¾ï¼Œè¡¨ç¤ºä¸€ä¸ªåŒºåŸŸã€‚å› ä¸ºHTMLä¸å…·æœ‰ç‰¹å®šæ„?ä¹‰çš„æ ‡ç¾å®žåœ¨æ˜¯å¤ªå°‘了(所以W3Cä¸»å¼ ä»ŽHTMLå?‘XML过渡),我们æŸ?些情况下å?ªæœ‰é…?å?ˆä½¿ç”¨<div>,<span>ç‰æ ‡ç¾å’Œid,classç‰å±žæ€§æ?¥ç»„织一个特定的内容。所以我觉得<div><span>éƒ½æ˜¯æ¯”è¾ƒå°´å°¬çš„æ ‡ç¾ï¼Œå?ªèƒ½ç®—是å?Šè¯ä¹‰çš„,å?ªæ˜¯ç”±äºŽHTML的局é™?,我们ä¸?å¾—ä¸?大é‡?的使用他们。
W3Cæ??倡结构ã€?表现ã€?行为三者分离,任何一个层é?¢çš„æ”¹å?˜éƒ½ä¸?应当ä¾?赖其他层é?¢ã€‚这是一ç§?很好的æ€?想,ä¸?过在目å‰?技术局é™?的情况下这还是一ç§?ç?†æƒ³çжæ€?ï¼Œå› ä¸ºæ— è®ºæ˜¯HTML,CSS,DOMç‰è§„范还是æµ?览器的支æŒ?ç‰éƒ½è¿˜ä¸?完善,至少是ä¸?足以支撑这ç§?æ€?想,我们所能å?šçš„å?ªæ˜¯å°½åЛ如æ¤äº†ã€‚
畅想一下未æ?¥è¿™ç§?ç?†æƒ³çš„三者分离的状况下å?šç½‘站,需求通过一系列沟通将转å?˜ä¸ºä¸€ä¸ªç»“构化文档(比如XML),å?Œæ—¶åˆ°è¾¾å‰?å?°å’Œå?Žå?°ï¼Œç„¶å?Žä¸¤è€…一起开å?‘,互ä¸?干扰。å‰?å?°ç¾Žå·¥è´Ÿè´£å‡ºè®¾è®¡å›¾å¹¶å’Œå®¢æˆ·æ²Ÿé€šï¼Œå®šç¨¿å?Žç„¶å?Žé€šè¿‡CSS和结构化文档整å?ˆï¼Œå?Žå?°ç¨‹åº?员则直接按需求å?šåŠŸèƒ½æ¨¡å?—,最å?Žå‰?å?°å?Žå?°æ— ç¼?æ•´å?ˆ……


