由于ASP.NET中的主题用于设置网站元素的样式,我只是想知道为什么要使用主题而不是CSS,或者通常的做法是同时使用它们?如果是这样,你何时会选择一个与另一个为什么?为什么?
在我看来主题是不必要的,所以我只是在澄清是否真的有充分的理由使用它们,或者它只是框架的一部分作为替代(不必要的)步骤来设置你的风格站点。
答案 0 :(得分:3)
想象一下,无论出于何种原因,您都有一个网站使用了几十个asp:Calendar控件。
要使用CSS单独设置样式,您必须在每个设置上添加属性:DayStyle和TitleStyle以及NextPrevStyle以及on和on ...
使用主题将允许您只设置所有这些属性,并将其应用于网站上的每个asp:Calendar。主题将包含相同的CSS,但也包含如何将CSS应用于服务器控件的声明,这是您不能轻易做到的事情。
当然,正如Brian Hasden所说,你可能需要一些超出主题的“全球”CSS(特别是如果你的网站有多个主题)。
答案 1 :(得分:1)
主题具有紧密集成到整个.NET环境中的好处,因此无需指定样式即可实现主题化。它像.NET中的许多其他东西一样自动发生。基于此,我可以看到一些人的吸引力。
话虽如此,我个人从不使用整个主题,因为我觉得它需要你保持两种不同的风格。一个是主题的一部分,然后是其他在整个主题交易之外不可避免地需要的。
由于以前的项目使用不当,我可能只是一个控制狂或不喜欢主题。