代码之家  ›  专栏  ›  技术社区  ›  Erik Öjebo

ASP.NETMVC用户控件中CSS的处理策略

  •  2
  • Erik Öjebo  · 技术社区  · 16 年前

    我刚刚开始使用ASP.NETMVC框架,今天我创建了一个使用CSS的简单用户控件。由于CSS是在单独的文件中声明的,并且包含在调用UserControl的视图中,而不是在UserControl本身中,因此Visual Studio找不到UserControl中使用的任何CSS类。这让我想到了在用户控件中处理CSS最合适的方法。

    如果同一个控件在不同的上下文中使用,并且需要能够适应调用视图的样式,那么在使用UserControl的视图中声明CSS可以提供更大的灵活性。

    让UserControl提供自己的CSS将导致更清晰的分离,视图不需要知道任何关于UserControl生成的HTML/CSS的信息,而是以控件的固定外观为代价。

    由于我对这个框架完全陌生,我猜人们已经对此得出了一些好的结论。

    那么,您会让UserControl处理自己的CSS吗?它应该依赖于调用视图中声明的CSS,还是有其他更好的解决方案?

    3 回复  |  直到 16 年前
        1
  •  1
  •   Todd Smith Brandon    16 年前

    我假设99.9%的时间你会想定制你的控件的外观,而不是让它们预先定义一个外观。

    例如 here CSS是为Yahoo的TabView控件定义的吗

        2
  •  1
  •   Chris James    16 年前

    它应该始终在您的全局CSS中。如果您将其传递给设计器,则不必解释哪个控件定义了x样式等。

        3
  •  0
  •   Timothy Khouri    16 年前

    MVC UserControl

    <%= MyHelperClass.Marquee("This text will scroll!!!", "important-text") %>
    

    我当然假装“重要文本”是我想添加到控件中的类名。

    我假设当你说“UserControl”时,你指的是上面链接中的例子。