我有以下的HTML代码:麻烦背景图像出现在HTML
<div style="background-image:url(~/Images/MyImage.jpg); width:100%; height:100%">
我不是太熟悉HTML,而是形成所有我见过的文章,这应该很好地工作。如果我在一个asp.net图像控件中显示图像,那么它显示正常。不过,我想把文本放在上面。有谁能告诉我我做错了什么吗?
我有以下的HTML代码:麻烦背景图像出现在HTML
<div style="background-image:url(~/Images/MyImage.jpg); width:100%; height:100%">
我不是太熟悉HTML,而是形成所有我见过的文章,这应该很好地工作。如果我在一个asp.net图像控件中显示图像,那么它显示正常。不过,我想把文本放在上面。有谁能告诉我我做错了什么吗?
默认情况下,不能在普通HTML元素的路径中使用~
。这只能被ASP.NET理解,但是你的元素被视为标记,只是简单地发送到浏览器而不被服务器端脚本处理。
您应该的id
属性和属性runat="server"
添加到您的<div>
所以,它是由ASP.NET的认可,否则你将不得不使用相对或绝对URL,而不在路径中~
:
<div id="mydiv" style="background-image:url(~/Images/MyImage.jpg);" runat="server">
或
<div style="background-image:url(/Images/MyImage.jpg);">
您的DIV不计算作为服务器控件,因此“〜”字符不被识别,因为它应该。不是100%肯定,但添加RUNAT =“服务器”应该工作...
<div style="background-image:url(~/Images/MyImage.jpg); width:100%; height:100%" runat="server">
在上面你把<div ...> </div>
之间的任何文本会过来背景图像的情况。
此外,由于runat = server
标签丢失,它甚至不会被asp.net触及。所以你的网址也是错误的〜。