0

我在 MVC 中的 OnResultExecuting(ResultExecutingContext filterContext) 方法中预加载样式表,这只是为了确保在加载页面时调用 actionResult 之前完成此操作,并且工作正常,我现在的问题是我想修改样式在名为 logo 的类中的工作表背景图像属性和构建标记之前(下面的代码)并添加到 DOM 的头部部分,我想知道是否没有办法读取(StreamReader?/StreamWriter?) css 文件并在构建标签或类似的东西之前对其进行修改并保存它,顺便说一句,我从服务器获取 css 文件。

foreach (string file in filepath)
{
    if (Path.GetExtension(file).ToLower() == ".css")
    {
        TagBuilder link = new TagBuilder("link");
        link.Attributes["rel"] = "stylesheet";
        link.Attributes["type"] = "text/css";
        link.Attributes["href"] = urlHelper.Content(
            string.Format("~/Content/themes/Theme{0}/{1}",
                setting.ThemeId, Path.GetFileName(file)));

        resources.Add(MvcHtmlString.Create(link.ToString(TagRenderMode.SelfClosing)));
    }
}
4

2 回答 2

0

您可以在此样式表之后加载另一个样式表并以这种方式修改类样式,事实上这正是我为我的白标解决方案执行此操作的方式。

于 2012-08-02T07:00:03.597 回答
0

你不能使用 LESS 来动态创建你的 CSS 吗?

http://www.dotlesscss.org/

http://karlmendes.com/2010/07/using-less-css-for-net-with-asp-net-mvc-2/

也许它会让你的事情变得更容易......

于 2012-08-06T20:46:04.620 回答