本系列文章導航
VML極道教程(一) VML介紹
VML極道教程(二) VML入門
VML極道教程(三) 標記實戰與line線
VML極道教程(四) oval圓rect矩型
VML極道教程(五) RoundRect圓矩型
VML極道教程(六) image圖片
VML極道教程(七) polyline多邊型
VML極道教程(八) shape多邊型.shapetype模版.shape與curve曲線
VML極道教程(九) background背景
VML極道教程(十) group集合容器.vmlframe圖形引用
VML極道教程(十一) 2級標記stroke邊框,shadow陰影
VML極道教程(十二) VML編程大結局
oval圓rect矩型
《VML極道教程》原著:沐緣華
1章7節:oval圓rect矩型
1:oval圓與rect矩型
VML的oval和rect分別可以繪製圓形與矩形,由於這兩個標記的編寫方法、原理、屬性基本一致,所以我把他們放在一起講 oval、rect的3D輸出執行個體<HTML xmlns:v><STYLE>v/:*{behavior:url(#default#VML);}</STYLE><BODY>
<v:oval style="POSITION:absolute;Z-INDEX:1;LEFT:200px;TOP:150px;width:100;height:100;" fillcolor="yellow"/>
<v:rect style="POSITION:absolute;Z-INDEX:1;LEFT:320px;TOP:150px;width:100;height:100;"/>
<v:rect style="POSITION:absolute;Z-INDEX:2;LEFT:260px;TOP:230px;width:100;height:50;" strokeweight="2px"/>
<v:oval style="POSITION:absolute;Z-INDEX:3;LEFT:290px;TOP:250px;width:50;height:100;" fillcolor="red" stroked="f"/>
從例子中可以看出,oval、rect除了VML圖形的通用屬性外,沒有專有屬性。CSS的POSITION:absolute;使其以Vector3D形式在網頁輸出,z-index:;定義3D高度,left:;top:;則分別定義距離網頁左、上方的位置,width:100;height:50;則分別描述圖形的寬度為100px和高度為50px。fillcolor、strokeweight、stroked則分別控制背景顏色、邊框粗度、有無邊框。其中stroked="f"的“f"值即代表boolean變數類型的false的簡寫形式,表示不使用邊框,否則為stroked="t"或stroked="true"則代表圖形有邊框。true是圖形的預設值,表示使用邊框
oval、rect的2D輸出執行個體<HTML xmlns:v><STYLE>v/:*{behavior:url(#default#VML);}</STYLE><BODY>
<v:oval style="width:100;height:100;" fillcolor="yellow"/>
<v:rect style="width:100;height:100;"/><p>
<v:rect style="width:100;height:50;" strokeweight="2px"/><br>
<v:oval style="width:50;height:100;" fillcolor="red" stroked="f"/><br>
<table border=1><tr><td colspan=2 align=center>HTML表格</td></tr>
<tr>
<td><v:oval style="width:100;height:100;" fillcolor="red" stroked="f"/></td>
<td><v:oval style="width:100;height:100;" filled="false" strokecolor='blue'></v:oval></td>
</tr>
</table>
從例子不難看出,VML像傳統HTML標記那樣按照代碼順序一一排版、輸出,碰到<p><br>等HTML換行標記就會另起一行。而且,HTML標記建立的容器(本例容器是表格)內可以將VML圖形嵌套。VML圖形因為沒有定義POSITION:absolute;,所以就會以預設的2D形式跟HTML一樣輸出
這點不難看出VML與HTML之間的相容性是多麼的良好,不過VML Vector2D設計畢竟應用面比較狹窄、只能做HTML的配角。本章節只是提供一個VML Vector2D的示範,所以以後我們將主要講VML Vector3D的圖形設計。也許你現在看不出VML Vector3D圖形設計的精彩、如何應用,但現在你只是在學習VML標記、深入。當你學會了VML標記這些基礎知識,以後我會慢慢教你如何精彩的實際應用。
博文來源:http://www.cnblogs.com/GeneralXU/archive/2007/05/29/763208.html