在VS 2005和ASP.NET 2.0中处理CSS样式表

本文介绍了一个ASP.NET2.0中使用的实用技巧:通过母板页集中管理CSS样式表,实现网站UI的一致性。特别介绍了如何使用<head runat="server">控件来处理样式表文件的相对路径,确保在不同项目结构下样式的一致性和图片的正确加载。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

推荐一个可在ASP.NET 2.0中利用的技巧是,当使用CSS时,使用母板页的功能给你的网站提供统一的UI,使用母板页在一个地方引用所有的样式表,这样,所有基于这个母板页的网页就会自动获得这些样式表。

可利用的一个技巧是由 <head runat="server"> 控件提供的对相对路径调整的支持。可以在母板页里使用这个东西来轻松地引用一个在整个项目里重用的.CSS 样式表文件,不管这个项目是相对于根目录的还是一个子应用:

 

<%@ Master Language="C#" AutoEventWireup="true" CodeFile="Site.master.cs" Inherits="Site" %>

<html><head runat="server">

<title>Master Page</title>

<link href="StyleSheet.css" rel="stylesheet" type="text/css" />

</
head><body>

<form id="form1" runat="server">

<asp:contentplaceholder id="MainContent" runat="server">

</asp:contentplaceholder>

</form></body></html>

 

<head> 控件的路径调整功能然后就可以取一个 .CSS 样式表文件的相对路径,然后在运行时正确地输出其绝对路径,不管它是个相对于根目录的网站还是一个子应用的一部分。

然后,网站上的页面就可以类似下面这样的内容,这些网页会在运行时和在设计时VS的HTML即见即所得(WYSIWYG)设计器里自动获得样式表设置:

 

<%@ Page Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" Title="Sample Page" %>

<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" Runat="Server">

<h1>Root Web Site Sample</h1>

<a href="/Products">Click here to go to the Products section (note the absolute path) </a>

</asp:Content>

 

因为包含在 .CSS 样式表文件中的图片引用是相对于 .CSS文件的路径而被浏览器引用的,而不是相对于使用样式表文件的网页的路径的,可以把这个行为与上面的这个 <head runat="server"> 的逻辑结合起来,使得你的图片在根网站和子应用两个情形下自动生效,即使后来改变路径也不会出问题。

通过这个方式引用的图片在VS 2005的HTML即见即所得(WYSIWYG)设计器里也会正确地显示,不这样做的话,VS 2005有时会有困难决定获取图片引用的“/”根路径。

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值