国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > HTML > 正文

XHTML教程:Transitional和Strict的區別

2024-08-26 00:09:24
字體:
來源:轉載
供稿:網友

在推廣web標準的今天,那些崇尚web標準的人經常說xhtml比html更加嚴格,當然從某種意義上說是的,比如它要求所有的標簽關閉并且所有的屬性都用引號。但其實xhtml 1.0還分兩種(加上frameset doctype的話算三種,本文不討論),transitional(過渡型)和strict(嚴格)doctypes。并且html 4.01也有同樣的文檔聲明。

從字面上就可以看出來意思:transitional doctypes只是為了實現從舊時代到新時代的過渡,而且strict doctypes是默認的文檔聲明, 對構造html 4.01和xhtml 1.0都適用。

使用transitional doctype一般是由于代碼中含有過多陳舊的寫法,并且一下子很難完全轉換到strict doctype來。但是strict doctype才應該是你的目標。它鼓勵甚至有時是強迫你把結構與表現區分開來,把表現層的代碼都寫在css里。html 4 document type definition

本html 4.01 strict dtd不包括表現層屬性和標簽,w3c將逐漸淘汰這些屬性和標簽,您完全可以使用樣式表來實現。您應該使用strict dtd,如需獲得表現層屬性和標簽的支持,請使用transitional dtd。

用strict doctype還有一個好處,即可以讓瀏覽器使用它們最嚴格、(一定程度上)最符合標準的模式來渲染頁面。

tommy olsson在web standards group的ten questions for tommy olsson一文中很好的闡述了使用strict的好處:

我覺得,使用strict dtd,無論是html 4.01 strict還是xhtml 1.0 strict,遠比討論是用html還是xhtml重要的多。它代表了未來互聯網的質量。它將結構和表現分開,使得維護一個站點非常容易。

對于剛開始接觸web standards和正確的、語義化的結構的人,認清transitional和strict doctypes的區別非常重要。更多詳細列表請參考:xhtml: differences between strict & transitional、comparison of strict and transitional xhtmlxhtml1.0 element attributes by dtd

對于準備向strict進發的人來說,兩者的有些區別很可能會使開發者犯錯誤,接下來我將會談到。

在strict doctypes下不支持的標簽

  • center
  • font
  • iframe
  • srike
  • u

在strict doctypes下不支持的屬性

  • align (表格相關的支持:col, colgroup, tbody, td, tfoot, th, thead, and tr)
  • language
  • background
  • bgcolor
  • border (table支持)
  • height (img和object支持)
  • hspace
  • name (在html 4.01 strict中支持,xhtml 1.0 strict中的form和img不支持)
  • noshade
  • nowrap
  • target
  • text, link, vlink, 和alink
  • vspace
  • width (img, object, table, col, 和 colgroup都支持)

內容模型的區別

元素類型的內容模型描述了什么樣的元素類型實例可以被包含。這一點上,兩種文檔聲明的最大區別在于blockquote, body, 和form元素僅能夠包含塊級元素,如:

  • 文本和圖像不允許直接包含在body中,必須被p或者div等塊級元素包含
  • input元素不能直接是form元素的下一層
  • blockquote元素內的文本,必須被p或者div等塊級元素包含

將所有的表現都交給css,恪守strict標準

在向strict doctypes過渡的過程中,了解每個元素是做什么的比知道每個元素長啥樣有效的多。

首先考慮結構和語義,然后再擔心表現。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 广汉市| 百色市| 澄城县| 三明市| 田阳县| 外汇| 湾仔区| 邵阳县| 望城县| 镇巴县| 江西省| 桂林市| 闸北区| 正镶白旗| 大埔区| 金寨县| 永修县| 台前县| 林甸县| 奉贤区| 宝坻区| 昭觉县| 石台县| 奉节县| 峨眉山市| 阜阳市| 武胜县| 涞水县| 卫辉市| 徐州市| 保定市| 印江| 汾西县| 平遥县| 滦南县| 千阳县| 通许县| 桓台县| 綦江县| 清镇市| 思南县|