Tag Archives: 電腦語言

W3C 教程-萬維網聯盟(W3C)教程

萬維網聯盟(W3C)教程

當您將我們的《W3C 教程》學習完畢,您會對W3C 有一個全面的了解。

您將了解到萬維網聯盟,以及WEB 是如何被標準化的。

內容目錄

W3C 簡介
本節內容:W3C 是什麼組織,它如何運作,網絡是如何被標準化的。
W3C 程序
本節內容:W3C 的標準化過程。
W3C HTML
本節內容:簡要介紹W3C 的HTML。
W3C XHTML
本節總結了W3C 的XHTML 活動。
W3C XML
本節總結了W3C 的XML 活動。
W3C CSS
本節總結了W3C 的CSS 活動。
W3C XSL
本節總結了W3C 的XSL 活動。
W3C XML Schema
本節總結了W3C 的XML Schema 活動。
W3C XPath
本節總結了W3C 的XPath 活動。
W3C XQuery
本節總結了W3C 的XQuery 活動。
W3C DOM
本節總結了W3C 的DOM 活動。
W3C SOAP
本節總結了W3C 的SOAP 活動。
W3C WSDL
本節總結了W3C 的WSDL 活動。
W3C RDF
本節總結了W3C 的RDF 活動。
W3C SMIL
本節總結了W3C 的SMIL 活動。
W3C Other
本節總結了W3C 的其他活動。

建站手冊-萬維網聯盟(W3C)教程

萬維網聯盟(W3C)教程

當您將我們的《W3C 教程》學習完畢,您會對W3C 有一個全面的了解。

您將了解到萬維網聯盟,以及WEB 是如何被標準化的。

內容目錄

W3C 簡介
本節內容:W3C 是什麼組織,它如何運作,網絡是如何被標準化的。
W3C 程序
本節內容:W3C 的標準化過程。
W3C HTML
本節內容:簡要介紹W3C 的HTML。
W3C XHTML
本節總結了W3C 的XHTML 活動。
W3C XML
本節總結了W3C 的XML 活動。
W3C CSS
本節總結了W3C 的CSS 活動。
W3C XSL
本節總結了W3C 的XSL 活動。
W3C XML Schema
本節總結了W3C 的XML Schema 活動。
W3C XPath
本節總結了W3C 的XPath 活動。
W3C XQuery
本節總結了W3C 的XQuery 活動。
W3C DOM
本節總結了W3C 的DOM 活動。
W3C SOAP
本節總結了W3C 的SOAP 活動。
W3C WSDL
本節總結了W3C 的WSDL 活動。
W3C RDF
本節總結了W3C 的RDF 活動。
W3C SMIL
本節總結了W3C 的SMIL 活動。
W3C Other
本節總結了W3C 的其他活動。

HTML5 教程-HTML 5 Canvas vs. SVG

HTML 5 Canvas vs. SVG

Canvas 和SVG 都允許您在瀏覽器中創建圖形,但是它們在根本上是不同的。

SVG

SVG 是一種使用XML 描述2D 圖形的語言。

SVG 基於XML,這意味著SVG DOM 中的每個元素都是可用的。您可以為某個元素附加JavaScript 事件處理器。

在SVG 中,每個被繪製的圖形均被視為對象。如果SVG 對象的屬性發生變化,那麼瀏覽器能夠自動重現圖形。

Canvas

Canvas 通過JavaScript 來繪製2D 圖形。

Canvas 是逐像素進行渲染的。

在canvas 中,一旦圖形被繪製完成,它就不會繼續得到瀏覽器的關注。如果其位置發生變化,那麼整個場景也需要重新繪製,包括任何或許已被圖形覆蓋的對象。

Canvas 與SVG 的比較

下表列出了canvas 與SVG 之間的一些不同之處。

Canvas

  • 依賴分辨率
  • 不支持事件處理器
  • 弱的文本渲染能力
  • 能夠以.png 或.jpg 格式保存結果圖像
  • 最適合圖像密集型的遊戲,其中的許多對象會被頻繁重繪

SVG

  • 不依賴分辨率
  • 支持事件處理器
  • 最適合帶有大型渲染區域的應用程序(比如穀歌地圖)
  • 複雜度高會減慢渲染速度(任何過度使用DOM 的應用都不快)
  • 不適合遊戲應用

HTML5 教程-HTML5 內聯SVG

HTML5 內聯SVG

HTML5 支持內聯SVG。

什麼是SVG?

  • SVG 指可伸縮矢量圖形(Scalable Vector Graphics)
  • SVG 用於定義用於網絡的基於矢量的圖形
  • SVG 使用XML 格式定義圖形
  • SVG 圖像在放大或改變尺寸的情況下其圖形質量不會有損失
  • SVG 是萬維網聯盟的標準

SVG 的優勢

與其他圖像格式相比(比如JPEG 和GIF),使用SVG 的優勢在於:

  • SVG 圖像可通過文本編輯器來創建和修改
  • SVG 圖像可被搜索、索引、腳本化或壓縮
  • SVG 是可伸縮的
  • SVG 圖像可在任何的分辨率下被高質量地打印
  • SVG 可在圖像質量不下降的情況下被放大

瀏覽器支持

Internet Explorer 9、Firefox、Opera、Chrome 以及Safari 支持內聯SVG。

把SVG 直接嵌入HTML 頁面

在HTML5 中,您能夠將SVG 元素直接嵌入HTML 頁面中:

實例

<!DOCTYPE html>
<html>
<body>

<svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="190">
  <polygon points="100,10 40,180 190,60 10,60 160,180"
  style="fill:lime;stroke:purple;stroke-width:5;fill-rule:evenodd;" />
</svg>
 </body> </html>

親自試一試

結果:

如需學習更多有關SVG的知識,請閱讀我們的SVG教程

HTML5 教程-HTML5 Canvas

HTML5 Canvas

canvas 元素用于在网页上绘制图形。

什么是 Canvas?

HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像。

画布是一个矩形区域,您可以控制其每一像素。

canvas 拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。

创建 Canvas 元素

向 HTML5 页面添加 canvas 元素。

规定元素的 id、宽度和高度:

<canvas id="myCanvas" width="200" height="100"></canvas>

通过 JavaScript 来绘制

canvas 元素本身是没有绘图能力的。所有的绘制工作必须在 JavaScript 内部完成:

<script type="text/javascript">
var c=document.getElementById("myCanvas");
var cxt=c.getContext("2d");
cxt.fillStyle="#FF0000";
cxt.fillRect(0,0,150,75);
</script>

JavaScript 使用 id 来寻找 canvas 元素:

var c=document.getElementById("myCanvas");

然后,创建 context 对象:

var cxt=c.getContext("2d");

getContext(「2d」) 对象是内建的 HTML5 对象,拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。

下面的两行代码绘制一个红色的矩形:

cxt.fillStyle="#FF0000";
cxt.fillRect(0,0,150,75); 

fillStyle 方法将其染成红色,fillRect 方法规定了形状、位置和尺寸。

理解坐标

上面的 fillRect 方法拥有参数 (0,0,150,75)。

意思是:在画布上绘制 150×75 的矩形,从左上角开始 (0,0)。

如下图所示,画布的 X 和 Y 坐标用于在画布上对绘画进行定位。

Canvas 实例:理解坐标

实例:把鼠标悬停在矩形上可以看到坐标

更多 Canvas 实例

下面的在 canvas 元素上进行绘画的更多实例:

实例 – 线条

通过指定从何处开始,在何处结束,来绘制一条线:

Canvas 实例:线条JavaScript 代码:

<script type="text/javascript">

var c=document.getElementById("myCanvas");
var cxt=c.getContext("2d");
cxt.moveTo(10,10);
cxt.lineTo(150,50);
cxt.lineTo(10,50);
cxt.stroke();

</script>

canvas 元素:

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;">
Your browser does not support the canvas element.
</canvas>

亲自试一试

实例 – 圆形

通过规定尺寸、颜色和位置,来绘制一个圆:

Canvas 实例:圆形JavaScript 代码:

<script type="text/javascript">

var c=document.getElementById("myCanvas");
var cxt=c.getContext("2d");
cxt.fillStyle="#FF0000";
cxt.beginPath();
cxt.arc(70,18,15,0,Math.PI*2,true);
cxt.closePath();
cxt.fill();

</script>

canvas 元素:

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;">
Your browser does not support the canvas element.
</canvas>

亲自试一试

实例 – 渐变

使用您指定的颜色来绘制渐变背景:

Canvas 实例:渐变JavaScript 代码:

<script type="text/javascript">

var c=document.getElementById("myCanvas");
var cxt=c.getContext("2d");
var grd=cxt.createLinearGradient(0,0,175,50);
grd.addColorStop(0,"#FF0000");
grd.addColorStop(1,"#00FF00");
cxt.fillStyle=grd;
cxt.fillRect(0,0,175,50);

</script>

canvas 元素:

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;">
Your browser does not support the canvas element.
</canvas>

亲自试一试

实例 – 图像

把一幅图像放置到画布上:

Canvas 实例:图像JavaScript 代码:

<script>
window.onload = function() {
    var canvas = document.getElementById("myCanvas");
    var ctx = canvas.getContext("2d");
    var img = document.getElementById("scream");
   ctx.drawImage(img, 10, 10);
};
</script>

canvas 元素:

<canvas id="myCanvas" width="244" height="182" style="border:1px solid #d3d3d3;">
Your browser does not support the HTML5 canvas tag.
</canvas>

亲自试一试

相关页面

参考手册:HTML 5 <canvas> 标签

参考手册:HTML DOM Canvas 对象