如何在ASP中读取CSS属性.NET

本文关键字:CSS 属性 NET 读取 ASP | 更新日期: 2023-09-27 17:54:33

可能重复:
有针对C#的CSS解析器吗?

我想在运行时访问在外部.CSS文件中定义的网站的一些CSS属性。我发现有一种方法可以在codeehind中以编程方式设置css属性,但我还没有找到任何方法来读取已经定义的属性。(我使用C#(

如何在ASP中读取CSS属性.NET

您可以阅读它们"在运行时";仅使用客户端脚本。

使用jQuery,它非常简单,而且您可以使用AJAX将值发送到服务器,然后进行处理或存储以备将来使用。

如果它是有效的选择,让我知道,我可以发布我的意思的基本例子。

基本示例

首先,使用的HTML:

<div class="mydiv" id="testDiv">I'm red</div>
<button type="button" id="testButton">Test</button>

CSS:

<style type="text/css">
.mydiv { background-color: red; }
</style>

现在您必须包含jQuery:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script>

最后有了这个JS代码:

<script type="text/javascript">
$(document).ready(function() {
    $("#testButton").click(function() {
        var oDiv = $("#testDiv");
        var sColor = oDiv.css("background-color");
        $.get("TestZone.aspx?cssvalue=" + sColor);
        alert("value has been sent");
    });
});
</script>

当单击按钮时,这将向服务器发送测试div的运行时背景色,并且在TestZone.aspx的代码后面可以处理该值。该示例通过querystring发送它,如果您愿意,也可以将其作为POST数据发送。

这是在代码后面获得aWebControldisplay值的方法:

aWebControl.Style["display"]

ASP。NET处理页面本身的标记。

您可以使用WebControl.Style属性以编程方式获取或设置内联样式(使用style属性与元素内联声明的CSS(。这为您提供了一个名称/值对的集合,表示该元素的内联样式。

control.Style["font-family"] = "Verdana";

内联样式被认为非常令人不快,所以除非你有充分的理由,否则不要使用它们。

页面之外的任何内容,都不能使用ASP访问。NET。从本质上讲,外部样式表仅由呈现页面的浏览器加载,而不由ASP处理。NET运行时,所以您没有机会检查它们。

如果您想解释这些文件,您需要手动加载它们,并使用CSS解析器进行解析。看看这个问题,寻找可能的解决方案:

  • 有针对C#的CSS解析器吗