变通的模板实现思路 —— 基于 asp.net2.0 母版页

传统的 asp,或者 php 都有很多分离程序和界面的模板引擎,有很多是基于正则查找,文本替换,然后输出的。在 asp.net2.0 中,因为母版页的出现,我摸索出一中新的方式:基于母版页实现界面和程序分离。

实现思路
在一个网站多个页面中,可能一些地方相同,那么我们可以使用同一个母版页。母版页因为对于美工来说,很吃力。我们需要做的就是让美工制作 html 页面,我们通过程序将 html 页面转换成 asp.net 的母版页。

具体方法

美工制作的 html 形式:

<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
< html  xmlns ="http://www.w3.org/1999/xhtml" >
< head >
< meta  http-equiv ="Content-Type"  content ="text/html; charset=utf-8"   />
< title > Default.aspx </ title >
< link  rel ="stylesheet"  type ="text/css"  href ="css/Global.css"   />
< link  href ="css/Page.css"  rel ="stylesheet"  type ="text/css"   />
</ head >

< body >
< div  id ="content"  class ="content" >
  
< div  id ="innerContent" >
    
<% contentplaceholder id="MainContent"  %>
  
</ div >
</ div >
</ body >
</ html >
关键的是这点代码:
<%contentplaceholder id="MainContent" %>
这就是我们模板的标签形式,为了方便美工编辑,两端使用 asp 程序的形式。通过替换 " <%" 为 " <asp: "、替换 " %>" 为 " runat="server" />"
标签就变成这样了:
<asp:contentplaceholder id="MainContent"  runat="server" />
这正是 asp.net 中的控件声明的代码。同理,同样可使用此方式应用于用户控件。这样就可以让美工插入简单的标签即可,母版页就自动生成出来了。
如果很多页面相同,则可以使用同一母版页,对应美工就只写一个 html 页面即可!
通过页面的 Page_PreInit 事件,我们还可以动态加载母版页,以实现多风格站点的瞬间切换。

使用案例:http://www.shanrui.net/

转载于:https://www.cnblogs.com/lspcieee/archive/2007/08/30/876112.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值