[ASP.NET]Masterpage使用不同的CSS樣式

在主版頁面使用不同的CSS樣式

在設計ASP.NET網站的時候,使用Masterpage(主版頁面)可以減少許多開發時間,主版頁面是做為 ASP.NET Web 應用程式中內容頁面的樣板容器和合併頁面,主版頁面可讓一組內容頁面便利地共用結構和內容。我們通常將每頁都會出現的固定頁面放進主版頁面,而每頁不同的內容則利用ContentPlace來區分,當然今天不是要來介紹Masterpage有多好用,而是當放入ContentPlace的內容頁面需使用跟主版頁面不同的CSS檔時該怎麼辦。

一般來說我們切割版面會把CSS集中到外部連結的同一個檔案,方便使用,但是還是有人愛切成一頁使用一個CSS檔,那主版頁面都放好了豈不頭大?

有一個很直覺的方式是在該ContentPlace加入連結,如下:

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<link href="css/dotblogs.css"  rel="stylesheet"  type="text/css" />

 

這樣一來這個ContentPlace就會使用該檔作為優先的CSS處理。

如果覺得這樣看起來會很亂,就從後置程式碼下手,如下:

 

 VB:  

Dim link As New HtmlLink()
link.Href = "dotblogs.css"
link.Attributes("rel") = "stylesheet"
link.Attributes("type") = "text/css"
Page.Header.Controls.Add(link)
 
 

 

 C#:

ControlHelper.AddStyleSheet(this.Page, "css/projectPage.css"); 
 
 
 
 
關於CSS的優先順序就不多說了,多加運用,豐富你的頁面吧!
 

分享


站作網站設計工作室 SiteMak Studio
Shinyo Ho 
Founder / Developer
email:shinyo.her@gmail.com|web:www.sitemak.com.tw