這次看了要製作的內頁畫面,「哇!真是好看耶!」,但是那個功能選單底下充滿了漸層色,還有一個有點立體的外框框著,先來看看整體架構:
由上圖可以看出來,版頭、內頁應該都不會有太大問題,最主要的問題可能會出現在功能表(Menu)上,如果是對於排版、切圖很有研究的人應該會覺得這也沒什麼了不起,只要切好放到適當的位子,設好滑鼠移過去時要變換的圖片,就可以製作出一個超有質感的Menu,但是我會嗎?當然不會呀!XD
既然我是一個很不會排版的人,而且我比較喜歡可以動態修改的程式,所以我的希望是直接使用Asp.net元件Menu放進Menu那塊區域。所以我要做的事情很簡單,就是用一個可以設底圖的東西把Menu放在那個東西裡面,然後把整個東西放到適當的地方。
雖然講很來很簡單,對於排版苦手的我還是搞了兩個小時,先來看成果:
Menu很順利的放到了有底圖的框架當中,YA!
我的方法是,利用兩個Table包住我要放的Menu,外框的Table負責將整個區塊放在MasterPage的適當位置,並且顯示我需要的底圖,而內框的Table則負責包住Menu,以調整margin-top、margin-left、margin-right和margin-bottom來撐開外框並將Menu移到應該到達的底圖位置。講起來非常抽象,把表格的框線顯示出來就可以很輕易的了解我做的蠢事。XD
最後,兩個Table的程式碼:
<table class="Meunborder_Out" border="0" cellpadding="0" cellspacing="0" width="100%"><tr>
<td style="background-color:White; background-image:url('../Images/ImageTest/menu0.JPG'); background-repeat:no-repeat;">
<table class="Meunborder_In"><tr><td>
<asp:Menu ID="MenuList" runat="server" DataSourceID="SM_DS" StaticDisplayLevels="2"
DynamicHorizontalOffset="10" Font-Names="Verdana" Font-Size="1.0em" ForeColor="#000044"
StaticSubMenuIndent="0px" DynamicVerticalOffset="0">
<StaticSelectedStyle BackColor="#1C5E55" />
<%--主項目被滑過的變色--%>
<StaticHoverStyle BackColor="#666666" ForeColor="White" />
<%--主項目的間距--%>
<StaticMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" />
<%--子項目被滑過的變色--%>
<DynamicHoverStyle BackColor="#1C5E55" ForeColor="White" />
<%--子項目的底色--%>
<DynamicMenuStyle BackColor="#E3EAEB"/>
<%--子項目的間距--%>
<DynamicMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" />
</asp:Menu>
</td></tr></table>
</td></tr></table>
對於我這種美編苦手,我覺得效果很不錯耶!XD
沒有留言:
張貼留言