ASP.NET MVC用户控件 - 何处将CSS特定于控件?

时间:2010-06-24 00:06:59

标签: css asp.net-mvc user-controls

我正准备编写一堆ASP.NET MVC用户控件。所有这些控件都是UI,需要CSS。有什么最好的做法?我应该有一个带有所有控件代码的巨大CSS文件吗?

理想情况下,我希望每个控件都有自己的CSS文件。有可能吗?

谢谢!

3 个答案:

答案 0 :(得分:4)

我个人会创建一个“controls.css”或类似的东西,并将所有与控件关联的css放在那里。当您准备好部署,压缩并将所有css缩小为1个文件。我最近一直在玩SquishIt而且非常喜欢它。

如果您已经设定为每个控件保持css文件分开,我会在关闭<head>之前向您的母版页的</head>添加额外的ContentPlaceHolder并将其称为类似“ExtraScriptsAndCss。”这样,如果您的视图使用某个控件,您可以将适当的css或javascript注入head标记。

答案 1 :(得分:0)

MVC中的“用户控件”实际上是“Html Helpers”。它们只是HTML,因此您可以以任何对您有意义的方式自由部署/分发它们。您可以将样式放在单个样式表中,也可以将它们拆分。只要<link rel>标记将它们添加到添加它们的页面中,它就可以正常工作。

我建议您向助手添加一个参数,允许用户覆盖默认的CSS路径和文件名,以防他们想要使用自己的。

答案 2 :(得分:0)

从实用的角度来看,我会选择一个巨大的CSS文件。它可以由客户端缩小和缓存。这样可以避免在尝试将正确的CSS放入文档的头部时嘲笑。