|
復制代碼 代碼如下:
static public class ControlHelper
{
static public void AddStyleSheet(Page page, string cssPath)
{
HtmlLink link = new HtmlLink();
link.Href = cssPath;
link.Attributes["rel"] = "stylesheet";
link.Attributes["type"] = "text/css";
page.Header.Controls.Add(link);
}
}
這樣,在具體頁面,我們就可以通過如下代碼添加 CSS 引用:
復制代碼 代碼如下:
protected void Page_Load(object sender, EventArgs e)
{
ControlHelper.AddStyleSheet(this.Page, "css/projectPage.css");
}
這種解決方案的好處時可以在程序運行時動態更改所需的css文件,但是對Javascript函數處理起來該怎么做呢?再說有必要把本該加在html代碼中的css和Javascript通過cs代碼來加入嗎?因此,這種解決方案也很快被我否定了。剩下的第三種解決方案就是在母版頁的<head></head>中添加一個內容控件,然后在內容頁中在對應的內容控件中寫css和Javascript代碼。聽起來這個這個解決方案應該是最方便,最適宜的解決方法??墒钱斘野袰ontentPlaceHolder控件拖放到<head></head中間時,vs2005卻報了下面的錯誤:
白天的時候,看到這我就以為這種方法行不通了,差點就放棄了。晚上回家想找找更好的解決方案,可所有的文章基本上都是說的前兩種,對第三種解決方案有人說報錯,不行??磥砼龅竭@個提示后放棄的人還真不少。我沒理這個錯誤,直接轉到內容頁,,在內容頁中插入以下代碼:
看了一下,內容頁中沒有報錯,看來有戲??赊D到內容頁的設計視圖一看,出現了如下界面:
心涼了一下,因為沒看到我上面應用的css樣式的效果,我的css文件的代碼如下:
復制代碼 代碼如下:
#content
{
text-align:center;
width:200px;
height:100px;
background-color:#00FF00;
color:#FF0000;
font-size:12px;
}
也就是讓id為content的div寬度200px,高度100px,文字居中,背景顏色為為綠色,字體為紅色,12px。不甘心的我按下了F5調試鍵,令人驚喜的一個畫面出現了:
這說明css應用成功了,同時也看到了那個測試可愛的hello world對話框alert了出來。成功了!
總結一下,其實很多人開始的想法和我一樣,想如何用最簡單的方法實現在內容頁中使用css和Javascript的功能。他們中的很多人可能也找到我找到的那篇文章,但是當碰到我的那個母版頁中的錯誤提示后就放棄了,也許有人堅持到了第二步,可是在設計視圖中沒看到css的應用效果后可能也放棄了。其實只要在堅持一下就成功了!余世維說的好“比別人多想一點,你就能成功!”,確實很有道理啊。
AspNet技術:使用母版頁時內容頁如何使用css和javascript,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。