如何在Asp.Net的皮肤文件中设置HTML body的属性背景图片?
我需要的是我需要改变我的页面的背景图像,如推特…但是通过使用皮肤文件...
发布于 2011-05-24 15:48:34
不是在外观文件中设置该属性,而是在样式文件中设置该属性
在App_Themes内Theme文件夹下的style.css中,编写属性
body {
background: url(images/path.png) repeat 0 0;
}发布于 2011-05-24 16:30:11
我担心皮肤文件是用于本机Asp.net控件的。
一种替代方法是动态生成CSS (或者已经生成了CSS ),并在代码隐藏中为用户加载该CSS。只需将此代码放在aspx页面/母版页的Head元素中:
<link id="Custom_StyleSheet" runat="server"
rel="stylesheet" type="text/css" href="" />并将其添加到您的母版页(或常规的Aspx页):
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
if (IsPostBack == false)
{
if (boolUseCustomStyleSheet == true)
{
//This is the relative path of your Css file.
Custom_StyleSheet.Href = sColorCssPath;
}
}
}如果您需要更细粒度的控件,您可以这样制作一个服务器端控件:
更改为:
<body id="someBody" runat="server" >然后将此代码添加到您的代码隐藏中:
protected void Page_Load(object sender, EventArgs e)
{
someBody.Style.Add("background-color", "Silver");
}我不推荐后一种方法,但您可以根据个人用户添加样式列表。如果它是一个有限的样式列表,那么我只需要为每个样式创建CSS,然后像前面的示例一样动态添加它们。
https://stackoverflow.com/questions/6107228
复制相似问题