【问题标题】:Is runat="server" required for HTML tags which have CSS style built by ASP.NET?具有由 ASP.NET 构建的 CSS 样式的 HTML 标记是否需要 runat="server"?
【发布时间】:2011-04-29 12:24:31
【问题描述】:

我得到了这个 div 标签,它的背景图像正在 CSS 中使用类似这样的方法设置..

内联 CSS:-

.id0, .mySprite:hover div
    {
        background-image: url(<%=GetImage()%>);
        background-repeat: no-repeat;
        width: 728px;
        height: 243px;

    }

HTML:-

<div class="id0"></div>

现在我需要在这个 div 标签中设置runat="server" 吗?因为它没有给出任何错误,但我想知道我可能需要从后面的代码中获取图像的路径...图像没有出现在 this 用户控件中。

【问题讨论】:

  • CSS 文件不是 ASP.NET 的 observable。重新考虑您的解决方案。为什么不从代码隐藏中为元素设置背景图像?或者在 CSS 中硬编码 URL。
  • @rpm:我做到了..你能在这里检查我的代码吗:stackoverflow.com/questions/3975148/…

标签: c# asp.net html css runatserver


【解决方案1】:

嗯,

  • "Runat=Server" 根本不需要。无论如何,CSS 都会在客户端(在浏览器中)加载/关联。
  • 抱歉,伙计,ASP.NET 不会评估 .CSS 文件 - 所以基本上,浏览器获取的“url”是 &lt;%=GetImage()%&gt;,显然浏览器无法使用它。

结果:不起作用。 不能不行。

【讨论】:

  • 方法返回的值怎么会显示在 CSS 中呢?
  • 在 CSS 中改变了这一点,并将该 div 中的 background-image 属性覆盖为 url(); ...图像路径出现在 div 中的页面源中..但看不到图像..runat=server's making no diff
  • 等等,这是内联 CSS 还是外部 CSS 文件?
  • 不寻常——那么我的回答自然是错误的。那么生成的文件中显示了什么?显然那里有错误;)
  • 什么都没有显示...没有图像...这些是我现在面临的问题..stackoverflow.com/questions/4012139/… ...还有这个stackoverflow.com/questions/4013669/… ...帮帮我? :( 就是不能让这个愚蠢的精灵工作..啊
【解决方案2】:

为什么需要服务器生成路径?图片路径应该是相对于 css 文件的,所以如果你的 css 在 project/css/style.css 并且图片在 project/images/myimage.jpg 使用

background-image: url(../images/myimage.jpg);

另外,使用 firebug 检查真正设置为背景图像的内容。你也可以试试

background-image: url(../images/myimage.jpg) !important;

【讨论】:

【解决方案3】:

您是从服务器端代码生成 css 吗?还是一个简单的 .css 文件? 如果你有 .css 文件,代码: background-image: url(&lt;%=GetImage()%&gt;);不工作。

然后,id为id0的div的css规则,你必须用#not dot (#id0 not .id0)来定义它

【讨论】:

  • id0 是一个类.. div 的类设置为 id0
  • @Benny :: 刚试过..不工作..仍然看不到任何图像
猜你喜欢
  • 2021-04-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多