VML相當於IE裡面的畫筆,能實現你所想要的圖形,而且結合腳本,可以讓圖形產生動態的效果。 VML是微軟1999年9月附帶IE5.0發行的,在我認為, VML其實是Word和HTML結合的產物。可以將Word文件另存為HTML,其中的文字和圖片可以很容易的轉換,但如果是手繪製的圖形在以往的IE裡面就無法解釋了,如果都轉換成圖形文件又不太現實。於是微軟把Word裡面的圖形控制結合到IE裡面,讓IE也具備了繪圖功能。
VML的全名是Vector Markup Language(向量可標記語言),向量的圖形,意味著圖形可以任意放大縮小而不損失圖形的質量,這在製作地圖上有很大用途。為了顯示它的強大,和增加你學習VML的信心,先給你看一個VML例子:
Hello world!
Hello VML! 在VML裡面,標記使用的是XML擴張,需要一個namespace(命名空間),你可以使用慣用的「v」作為命名空間,使用IE5.0到IE6.0通用的定義如下:
xmlns:v="urn:schemas-microsoft-com:vml"
>
xmlns 全名為XML NameSpace 也就是命名空間。 Behavior(行為)也是IE5.0新推出的東西,它的功能非常強大,結合樣式表,可以為任何HTML物件增加行為(新的屬性、方法、事件),而在這裡,它的用處是把命名空間“v”和系統預先定義的行為VML連接。這樣定義以後,你就可以使用下面的標記了,和普通的HTML標記有所區別,每個標記都增加了一個命名空間:
和其他HTML元素一樣,VML標記裡面可以定義DHTML大部分屬性和事件,比如說id,name,title,onmouseover等等。在寫法上VML比較靈活,很多屬性既可以寫在標記裡面,又可以獨立出一個新的標記來表示:
StrokeColor=red Path="m 0,0 l 10,10 x e"
>等同於下面的寫法:
當然不是所有的屬性都可以寫成獨立的標記,常用的比如說上面的Stroke(按我的理解可以翻譯成線性),Path,Shadow,Fill(填充)等,VML這樣的方式可以理解為shape 的屬性分類,使屬性更直觀。
Shape 物件衍生出來的一些對象,較直接的圖象,比如說Rect(矩形),RoundRect(圓邊的矩形),Oval(圓),Line(線),PolyLine(不規則折線),Image (圖形文件)等等,以後將對這些物件細細描述。