由于网址的要紧频道页和列表页的底部和底部皆以同样的,假使将种种页面放在单独的页面中,当底部和尾部须要改造时维护量太大。于是想把底部和后面部分做成母版页,频道页和列表页的具体内容放到内容页中。这样当头和底须要转移时,只要修改一下母版页就能够了。

由于网址的最首要频道页和列表页的底部和尾巴部分都以同样的,即使将种种页面放在单独的页面中,当尾部和尾巴部分须要改动时维护量太大。于是想把尾部和尾巴部分做成母版页,频道页和列表页的具体内容放到内容页中。那样当头和底要求退换时,只要修改一下母版页就足以了。

 

      
好处有了,难题也随后来了。原本在频道页和列表页中有其分别的css引入和一部分javascript函数,当使用母版页时,放在内容页中那一个css样式和javascript函数怎么管理啊?因为大家精通,使用母版页的内容页是不可能包含<head></head>标志的,而css和javascript函数的扬言是要放手<head></head>中间的,这么些css样式和javascript函数怎样管理吧?上网查了一晃,大概有二种缓慢解决方案:方案一:把具备的css样式和javascript函数放到母版页的<head></head>中,作者觉着这么做的弊病便是产生母版页的<head></head>区极度臃肿,同期要是原先四个频段页中含有同名的css注脚或javascript函数,但却是区别体制或施行不一操作,如何是好吧?所以那首先种方案急迅被自个儿否定了。方案二是在剧情页的PageLoad事件中通过代码来钦定本内容页的css文件。具体代码如下: 

实惠有了,难题也随着来了。原本在频道页和列表页中有其个别的css引进和一些javascript函数,当使用母版页时,放在内容页中这个css样式和javascript函数怎么管理呢?因为大家清楚,使用母版页的剧情页是无法包涵<head></head>标志的,而css和javascript函数的宣示是要放到<head></head>中间的,那些css样式和javascript函数怎么着管理吧?上网查了一下,差十分少有两种缓和方案:方案一:把富有的css样式和javascript函数放到母版页的<head></head>中动用母版页时内容页如何选择css和javascript,模板页中选择CSS样式。,作者认为那样做的流弊正是导致母版页的<head></head>区非常臃肿,相同的时候如果原来多个频段页中蕴藏同名的css申明或javascript函数,但却是分歧式或进行分裂操作,如何做吧?所以那第一种方案非常快被本人否定了。方案二是在内容页的PageLoad事件中经过代码来钦命本内容页的css文件。具体代码如下:

 

动用了.Net2.0的母版后,由于每种网页都单身在body中,不能够增加CSS,把CSS的引用写到母版中又会也会引起局地相对路线的难点。后来上网查看了弹指间,好些个的化解措施是在后台代码的Load事件中,扩展一下代码:

代码如下:

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和JavaScript征引,

  1. HtmlLink link = new HtmlLink();
  2. link.Href = cssPath;
  3. link.Attributes[“rel”] = “stylesheet”;
  4. link.Attributes[“type”] = “text/css”;
  5. page.Header.Controls.Add(link);

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 引用:

第一种格局:在母版页的cs文件中加多引用

例如:  HtmlLink link = new HtmlLink();

诸如此类,在切切实实页面,咱们就可以因此如下代码增多 CSS 征引: 

protected void Page_Load(object sender, EventArgs e)
{
     ControlHelper.AddStyleSheet(this.Page, “css/projectPage.css“);    
}

this.Page.ClientScript.RegisterClientScriptInclude(“testInclude”,
this.Context.Response.ApplyAppPathModifier(“~/CmInClude/FSLBaseCsript.js”));

        link.Href =
“App_Themes/Default/default.css”;

复制代码代码如下:

这种消除方案的裨益时可以在程序运维时动态改动所需的css文件,然而对javascript函数管理起来该怎么办吗?再说有供给把相应加在html代码中的css和javascript通过cs代码来投入呢?由此,这种消除方案也快速被小编否定了。剩下的其三种缓慢解决方案正是在母版页的<head></head>中增加八个剧情控件,然后在剧情页中在相应的内容控件中写css和javascript代码。听上去这些这几个解决方案应该是最有利于,最相宜的化解方法。可是当自家把ContentPlaceHolder控件拖放到<head></head中间时,vs2005却报了上面包车型客车不当:

 第二种办法:在母版页的页面文件中加上援用  

       
link.Attributes[“rel”] =
“stylesheet”;

protected void Page_Load(object sender, EventArgs e) 

ControlHelper.AddStyleSheet(this.Page, “css/projectPage.css”); 

金沙注册送58 1

<link rel=”stylesheet”
href=”<%=Page.ResolveClientUrl(“~/Css/web_Css.css”)%>”
type=”text/css”>    <script language=”javascript”
src=”<%=Page.ResolveClientUrl(“~/MMWeb/javascript/Common.js”)%>”></script>

       
link.Attributes[“type”] =
“text/css”;

      
这种消除方案的好处时能够在程序运转时动态改动所需的css文件,可是对javascript函数管理起来该咋办呢?再说有至关重要把应该加在html代码中的css和javascript通过cs代码来投入吧?由此,这种消除方案也极快被本身否定了。剩下的第三种减轻方案正是在母版页的<head></head>中加多一个内容控件,然后在内容页中在对应的源委控件中写css和javascript代码。听上去那一个这些化解方案应该是最方便,最确切的消除办法。然而当本人把ContentPlaceHolder控件拖放到<head></head中间时,vs2007却报了上面包车型客车一无所能: 
      
白天的时候,看到这本人就以为这种办法行不通了,差非常的少就抛弃了。晚上回家想找找更加好的解决方案,可具有的文章大都都是说的前二种,对第三种缓慢解决方案有一些人说报错,不行。看来蒙受这些提示后舍弃的人还真非常的多。作者没理那几个荒唐,直接转到内容页,,在剧情页中插入以下代码: 
      
看了须臾间,内容页中从不报错,看来有戏。可转到内容页的规划视图一看,出现了如下分界面: 
心凉了一下,因为没见到自身下面使用的css样式的效率,作者的css文件的代码如下: 

白天的时候,看到那本人就以为这种艺术行不通了,差了一点就舍弃了。中午还乡想找找越来越好的消除方案,可享有的文章大都都以说的前二种,对第三种缓慢解决方案有一些人会讲报错,不行。看来境遇这些提醒后遗弃的人还真非常的多。笔者没理那么些荒唐,直接转到内容页,,在内容页中插入以下代码:

其两种情势:使用Htmllink控件    

       
Header.Controls.Add(link);

金沙注册送58 ,复制代码代码如下:

金沙注册送58 2

protect void AddStyleSheet(Page page, string cssPath)    

自然那也是一种减轻办法,然则这么就从未有过章程使用VS的页面设计器,而且变成了每种页面包车型地铁Load都要求丰盛那样的代码,即使把它包裹成类,多少也会使得代码看起来远远不足深透。

#content 

text-align:center; 
width:200px; 
height:100px; 
background-color:#00FF00; 
color:#FF0000; 
font-size:12px; 

看了弹指间,内容页中绝非报错,看来有戏。可转到内容页的布署视图一看,出现了之类分界面:

{        

笔者们愿意得以有贰个越来越好,更专门的工作的减轻方法,这就是皮肤作用。具体步骤如下:
    1、为网址增加一套皮肤,如本例名叫MyTheme
       金沙注册送58 3
   
    2、在肌肤文件夹中增多贰个CSS文件,并编写制定CSS代码。

      
也正是让id为content的div宽度200px,中度100px,文字居中,背景颜色为为海水绿,字体为革命,12px。不甘心的笔者按下了F5调节和测验键,令人欣喜的贰个镜头出现了: 
       那评释css应用成功了,同期也看出了非凡测量试验可爱的hello
world对话框alert了出来。成功了! 
      
计算一下,其实过多少人开端的想法和本身同样,想怎么着用最简便易行的艺术完结在剧情页中选取css和javascript的效果与利益。他们中的很四个人可能也找到小编找到的那篇小说,然则当境遇笔者的非常母版页中的错误提示后就甩掉了,也可以有人持之以恒到了第二步,然而在绸缪视图中没见到css的使用效果与利益后恐怕也放任了。其实只要在坚定不移一下就顺理成章了!

金沙注册送58 4

HtmlLink link = new HtmlLink();        

    3、在web.config文件中追加全体页面包车型客车默许大旨
       金沙注册送58 5

 

心凉了眨眼间间,因为没看出本人上边运用的css样式的效应,小编的css文件的代码如下:

link.Href = cssPath;        

   
那是开采设计器,CSS的样式被运用在页面中,并且在运作时也能科学定位CSS文件,不会并发路线难题!


#content
{
     text-align:center;
     width:200px;
     height:100px;
     background-color:#00FF00;
     color:#FF0000;
     font-size:12px;
}

link.Attributes[“rel”] = “stylesheet”;        

也正是让id为content的div宽度200px,中度100px,文字居中,背景颜色为为均红,字体为革命,12px。不甘心的本人按下了F5调节和测量检验键,令人惊奇的叁个画面出现了:

link.Attributes[“type”] = “text/css”;        

金沙注册送58 6

page.Header.Controls.Add(link);    

那注解css应用成功了,同不经常候也来看了万分测量检验可爱的hello
world对话框alert了出去。成功了!

 }

小结一下,其实过多少人先导的主见和小编一样,想什么用最不难易行的法子实现在剧情页中运用css和javascript的效果与利益。他们中的很两个人恐怕也找到作者找到的那篇作品,不过当遭遇作者的要命母版页中的错误提示后就抛弃了,也会有人百折不挠到了第二步,不过在设计视图中没来看css的应用效益后也许也吐弃了。其实假如在百折不挠一下就成功了!余世维说的好“比人家多想一些,你就会不辜负众望!”,确实很有道理啊。

第四种办法:使用LiteralControl控件

来源:

LiteralControl lc = new
LiteralControl(“<scripttype=\”text/javascript\”src=\”scripts/js1.js\”></script>”);

Page.Header.Controls.Add(lc);    

相关文章

网站地图xml地图