注册通行证 用户名 密码
  • 文章投稿
  • 博客
  • 论坛
  • 设为首页
  • 加入收藏
jztop.com网络技术
  • 首页
  • | iT新闻
  • | 操作系统
  • | 组网建网
  • | 网络安全
  • | 程序开发
  • | 办公一族
  • | 工具软件
  • | 网页制作
  • | 多媒体制作
  • | 网吧技术
  • | 服务器
  • | 专题教程
Vista | 软件评测 | 系统备份 | 优化 | 进程 | 聊天 | 病毒 | Linux | 黑客 | 防火墙 | 数据库 | Web开发 | Java | Word | 游戏 | 32位开发 | 移动开发 | QQ专区
当前位置:首页 > 网页制作 > CSS技术应用 内容正文:ASP.NET 2.0配合MasterPage的优化CSS

ASP.NET 2.0配合MasterPage的优化CSS

发布时间:2006-05-24 22:19:38 来源:博客园 网友评论 0 条
  ASP.NET 2.0 中增加了内建的 MasterPage 的支持,这对我们来说是一个很大的便利。然而经过一段时间的使用,我发现 MasterPage 并不是那么完美:嵌套的 MasterPage 不能支持设计时界面,以及下面要提到的Content Page 中增加 CSS 的问题。 

  通常,在没有 2.0 之前,我们在页面里要增加一个 CSS 引用的语法如下:

<link rel="stylesheet" href="css/test.css" />

  原本是很平常的做法。但是在一个 MasterPage 的子页面中,出现了一个很尴尬的局面,就是:我们该把上述代码放到什么位置?

  因为 MasterPage 的具体内容页面中,只能定义一个个的 <asp:Content /> 标签的内容。我们按照通常的做法在 aspx 里面无法对页面的 <header/> 内容进行控制。而这个 <link/> 标签又必须放在 <header/> 内。我试验过在 <asp:Content /> 内部加入这行代码,但是会提示出错的。

  同时,我们也无法在 MasterPage 的 <header/> 内部放好一个 ContentPlaceHolder 用于将来放入 CSS 的引用代码。

  因此我的做法是定义了一个 helper 类如下:

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");
}

  并且,这个代码支持在具体内容页面,或者一个嵌套的 Master Page 中使用。

  说到这里也许有人会问,为什么要把 CSS 分开成这样来加载呢?有必要吗?我把所有页面的 CSS 定义到几个公共 CSS 文件里岂不是很好?

  其实,熟悉 web 标准的 HTML 制作的朋友一定知道,在比较完美的状态下,页面的 html 和用于表现的 CSS 应该彻底分离。而我们基于 web 标准的设计,通常是先做出一个 Master Page 中各个框架 div 的定位代码,以及 header,footer 部分的修饰代码。这些是每个内容页面都要用到的,会放在一个统一的 CSS 里面。其他的具体内容页面,每个页面又会有各自不同的内容的布局,修饰样式,因此我把每个具体页面特定的部分放在它自己的 CSS里。这样就形成了一个按照 Master Page 的实现层次(可嵌套),逐层合并的 CSS 模型。其好处是实现了每个 CSS 文件的职责分离,更容易理解和维护。
相关文章
  • 在ASP.Net 2.0中实现多语言界面的方法
  • ASP.NET 2.0移动开发入门之基础
  • ASP.NET 2.0服务器控件开发之基本概念篇
  • ASP.NET 2.0的新增服务、控件与功能
  • ASP.NET 2.0 中的异步页功能应用
【评论】【收藏本文】【打印】【关闭】
上一篇文章:纯CSS制作简洁的垂直导航
下一篇文章:CSS用样式表美化你的网页
讨论区
查看
已有 0 位对此新闻感兴趣的网友发表了看法
匿名发表
注册通行证 登陆
图文阅读推荐
CSS的“顶级技巧”
CSS的“顶级技巧”
如何使用CSS来进行网页排版
如何使用CSS来进行网页排版
CSS样式表教程-If you love css …
CSS样式表教程-If you love css …
推荐阅讯
  • CSS入门教程之CSS的语法
  • 导航上用CSS标志当前页效果的实现
  • 玩转表格 让你的网页炫起来
  • CSS布局入门
  • CSS中关于相对定位和绝对定位
  • DIV+CSS布局实例:各种2栏3栏布局实例(附下载
  • 修改IE浏览器滚动条样式的一个实例
  • CSS中的滑动门技术研究
  • 用DIV做不规则形状的环绕文字
  • 用CSS打造可折叠伸缩名片菜单
阅读排行
  • 1.如何使用CSS来进行网页排版
  • 2.CSS样式表教程-If you love css …
  • 3.CSS用样式表美化你的网页
  • 4.网页制作:几种所见所得的WEB在线编辑器
  • 5.网页常见可用性错误——表单组件错误
  • 6.CSS+JavaScript打造超酷右键菜单
  • 7.针对浏览器隐藏CSS之九大技巧
  • 8.DIV+CSS网页布局入门
  • 9.搜索引擎的蜘蛛人(ROBOTS)秘密
  • 10.CSS垂直树形下拉菜单
专题教程
  • 大话G游 专题:手机病毒揭密
  • ARP攻击防范与解决方案 路由故障处理手册
  • Picasa中文版_Picasa教程 专题:清除流氓软件
  • Firefox专题 seo搜索引擎优化专区
  • 重装Windows必知的事情 装机之必备软件大行动
病毒专杀栏
  • 杀毒软件反被病毒杀 连"救命"都不能喊
  • 金山ARP防火墙
  • 还原卡神话破灭“机器狗”病毒来势汹汹
  • cctv经济半小时:你的手机现在安全吗?
  • 新挂马方式开始流行 ARP挂马称雄局域网
  • 木马和病毒清除的通用解法
  • IP地址不再冲突 查找ARP攻击者元凶
  • 教你几招识别和防御Web网页木马
  • 分析:封杀BT只是暂时的止痛药
  • QQ爆危险漏洞,“QQ游戏邀请大盗”邀请你玩病
关于我们 | 诚聘英才 | 联系我们 | 版权声明 | 网站大事 | 网站地图 | 意见建议
CopyRight 2005-2007 Jztop.Com 版权所有 未经许可 请勿转载