我尝试了所有方法来将一张图片作为背景显示。在我的本地Visual Studio Express安装中,我已经让它正常工作了,但是当我上传到互联网主机服务器时,它无法正确渲染。我曾经遇到过标题背景图片的同样问题,但是找到了一个解决方案,但是同样的解决方案不能用于表单背景。
如果我将相同的背景图片样式标签放在 div class="page"
中,它将在我的开发环境和互联网主机服务器上都能渲染,但是我想要我的页面在这个背景图片之上(也就是说,我的应用程序代码页面在这个背景图片之上)。
有什么想法或建议吗?
Site.Master 代码示例:
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site.master.cs" Inherits="MyApp.SiteMaster" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head runat="server">
<title><%=Page.Title %></title>
<link href="~/Styles/site.css" rel="stylesheet" type="text/css" />
<link id="Link1" runat="server" rel="shortcut icon" href="~/favicon.ico" type="image/x-icon"/>
<link id="Link2" runat="server" rel="icon" href="~/favicon.ico" type="image/ico"/>
<asp:ContentPlaceHolder ID="HeadContent" runat="server">
</asp:ContentPlaceHolder>
<style type="text/css">
.style1
{
text-align: center;
}
</style>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
}
/* this code statement below is what I used to solve the header banner issue
but does not work for form background
*/
public string imgHeaderPath = System.Web.VirtualPathUtility.ToAbsolute("~/Images/water-banner.jpg");
</script>
</head>
<body >
<form runat="server" style="background-position: left top; background-repeat: repeat; background-attachment: fixed; background-image: url('/Images/willnotdisplay.jpg')">
<div class="page">
<div class="header" style="background-image: url('<%= imgHeaderPath %>')">
<div class="title">
<h1> <asp:Localize ID="Localize1" runat="server" Text="<%$ Resources:Resource, Title %>" /></h1>
</div>
.
.
.