2

我一直在试图弄清楚如何使用经典的 asp 引入动态 CSS 样式表。我已经阅读了很多关于这个主题的教程,但我似乎无法正确地理解它。他们中的许多人似乎暗示只需更改为 styles.asp 或 .aspx 并使用标准样式表链接引用它就可以了,但我没有得到那个结果。

http://www.4guysfromrolla.com/webtech/tips/t071201-1.shtml

我想要实现的是能够将工作中的 CMS 中的服务器端变量提取到我的样式表中。我意识到 SASS 和 LESS 存在并且可能能够适应,但我只是想找到一种简单的方法来使用 asp 变量并将它们拉到我的样式表中。我不是非常精通 ASP,所以您可以提供的任何帮助都会有所帮助。

编辑:我更新了下面的代码以反映工作代码。

HTML

<link rel="stylesheet" href="<% = TemplatePath %>css/styles.asp" type="text/css" />

ASP CSS 页面

<%
   dark_color = "navy" 
%>

<% Response.ContentType = "text/css" %>
<style type="text/css">
   h2 { color: <%= dark_color %> }
</style>
4

2 回答 2

2

这里缺少的成分是内容类型。默认情况下提供经典 ASP 页面text/HTML,这会使期望样式表为text/css.

更改内容类型如下:

Response.ContentType = "text/css"

MSDN 文档

于 2013-02-22T16:47:42.143 回答
0
    you could use global variables like Application and session which are accessible across overall application.

    here are the codes for your reference -

    my asp page named asp_1.asp

    <!DOCTYPE html>
    <html>
    <head>

         <link rel="stylesheet" type="text/css" href="dynastyle.asp">
    </head>
    <body>
    <%
    Set MyBrow=Server.CreateObject("MSWC.BrowserType")

    Application("myfontcolor") = "#ff0000"

    %>

    <table border="0" width="100%">
    <tr>
    <th>Client OS</th><th><%=MyBrow.platform%></th>
    </tr><tr>
    <td >Web Browser</td><td ><%=MyBrow.browser%></td>
    </tr><tr>
    <td>Browser version</td><td><%=MyBrow.version%></td>
    </tr><tr>
    <td>Frame support?</td><td><%=MyBrow.frames%></td>
    </tr><tr>
    <td>Table support?</td><td><%=MyBrow.tables%></td>
    </tr><tr>
    <td>Sound support?</td><td><%=MyBrow.backgroundsounds%></td>
    </tr><tr>
    <td>Cookies support?</td><td><%=MyBrow.cookies%></td>
    </tr><tr>
    <td>VBScript support?</td><td><%=MyBrow.vbscript%></td>
    </tr><tr>
    <td>JavaScript support?</td><td><%=MyBrow.javascript%></td>
    </tr>
    </table>

    </body>
    </html> 

    here i displayed simple HTML table to display browsers capability. you could use any element as per your requirement.

another steps towards the solution is to create asp page with dynamic css named dynastyle.asp. here is the code for same -

<% Response.ContentType = "text/css" %>
<%
DIM fontColor
**fontColor =Application("myfontcolor")**
%>

    table

{
    background-color: <%= fontColor %>;
} 
于 2014-01-25T16:23:37.427 回答