網頁設計html5來了,你準備好了嗎

 


伴隨著 Chrome, Firefox 3.5, Opera, 和 Safar對html5的支持,html5已經像一列暴走的列車接近我們了。這裡是些好的建議幫助你準備過渡到html5.
See what others have done(首先讓我們看看其他人已經做的吧)
開始準備html5的第一件事情就是先看下別人是使用它的。HTML 5 gallery 演示了一些使用html5的網站。
Now you do it(現在你可以開始了)
你可以先看看這些網站的文章,here(這裡html5 預覽) 和 elsewhere(和其他地方html5doctor), 甚至 read the specification(讀取html5詳細說明)
但是上面當中文章沒有一個能像使用新的元素那樣讓您領會掌握html5.
通過實際做,你可以知道什麼可以工作,什麼不可以工作。比如我在firefox3.5版本中發現類似article 和section的標籤默認顯示方式是display:inline模式,所以不得不強制設置它們為display:block模式才能像期望的效果顯示。
下面是整理的一些Web Design HTML 5, XHTML 1.0/1.1, 以及XHTML 5之間的一些關係或者結論吧。
我們所熟知和瞭解的HTML 4.0,它是基於SGML(standard Generalized markup language)規則手冊的。
在SGML規則手冊中,元素的書寫並不區分大小寫,你可以有選擇的閉合標籤,標籤屬性的書寫也可以不用引號標記。
XHTML 1.0 和1.1是基於XML的,在xml規則手冊中,所有的標籤和屬性必須用小寫,標籤必須閉合,而且所有的屬性必須用引號括起來。
HTML5定義的標記語言不是基於上面任何一種規則手冊,但是html5可以被寫成要麼是html形式,要麼是xhtml形式。
如果你用html形式書寫標籤的話,你就可以不用區分大小寫,而且標籤可以不用閉合,屬性不用引號,當中可以穿插一些xml的標籤。比如:<img /><br />等。
但是如果你用xhtml書寫標籤的話就必須嚴格遵照規格手冊。
以後xml畢竟是個發展方向,所以我推薦大家使用xhtml5.
使用網站設計xhtml5的時候一定要記住在聲明MIME 類型的時候,一定要用application/xhtml+xml 或者 text/xml。如果有語法錯誤會提示滴哈。
正則表達式
html5擴展了input元素,給它增加了一些新的屬性,比如min max (主要針對數字類型),html5還提供了一些新的type類型(比如url, email, date, 和time)
如果這些屬性不能滿足你的需求,html5還提供給type為text的input一個pattern的屬性,pattern的值就是和ECMAscript中的正則表達一樣。
這寫表單屬性已經在Safari and Chrome, 和 Opera中支持。如果你的瀏覽器不支持這些屬性。你可以下載Google’s Web Forms 2 提供。
例子:
<p>Enter a date: <input type="date" name="day"required="required"title="Use format yyyy-mm-dd" /></p><p>Enter a US or Canadian Postal Code:<input type="text" name="postCode"required="required"pattern="([0-9]{5}(-[0-9]{4})?)|([0-9][A-Z][0-9]\s+[A-Z][0-9][A-Z])"title="US: 99999-1234; Canadian: 0A1&#160;B2C" /></p>
Static art with SVG
html5允許在文檔對像中嵌入SVG (Scalable Vector Graphics)。根據這裡 我們可以知道svG嵌入已經在Firefox, Safari, 和 Opera 中支持了。如果你用的是firefox3.5可以點擊 這裡SVG 文件
這是一個複雜的SVG文件。這裡還有個簡單地 下面是個例子:
<svg xmlns:svg="http://www.w3.org/2000/svg"xmlns="http://www.w3.org/2000/svg"viewBox="0 0 200 100"width="200px" height="100px"><circle cx="50" cy="50" r="30" style="stroke:none; fill:#ff0000;"/><g transform="translate(100, 20) scale(1.65)"> <polygon points="36 25, 25 36, 11 36, 0 25, 0 11, 11 0, 25 0, 36 11" style="stroke:none; fill:#0000ff;" /></g><rect x="60" y="20" height="60" width="60" style="stroke:none; fill:#00ff00; fill-opacity: 0.5;" /></svg>SVG可以用js動態更改。html5提供了更好的解決方案。空白畫布的支持html5令人興奮的特性之一就是支持空白畫布。這一特性Firefox, Safari, Opera, 和 Chrome都支持。但是ie不支持。你可以用js繪製你需要的畫布。示例代碼:
function drawSimpleCanvas() { var canvas = document.getElementById("simpleCanvas"); if (canvas.getContext) { var ctx = canvas.getContext("2d"); ctx.beginPath(); // the circle ctx.fillStyle = "#ff0000"; ctx.arc(50, 50, 30, 0, 2*Math.PI, true); ctx.closePath(); ctx.fill(); ctx.save(); // move and resize the octagon ctx.translate(100, 20); ctx.scale(1.65, 1.65); ctx.fillStyle = "#0000ff"; ctx.beginPath(); ctx.moveTo(36, 25); ctx.lineTo(25, 36); ctx.lineTo(11, 36); ctx.lineTo(0, 25); ctx.lineTo(0, 11); ctx.lineTo(11, 0); ctx.lineTo(25, 0); ctx.lineTo(36, 11); ctx.closePath(); ctx.fill(); // restore graphics as they // were before move and resize ctx.restore(); ctx.fillStyle = "#00ff00"; ctx.globalAlpha = 0.5; ctx.beginPath(); ctx.rect(60, 20, 60, 60); ctx.closePath(); ctx.fill(); }}

更多關於網頁寄存可以看這裡Canvas tutorial

不要等了趕緊驗證下html5在表單和canvas等的新特性吧


 

 

arrow
arrow
    全站熱搜

    hkseo 發表在 痞客邦 留言(0) 人氣()