我需要为一个内联网网站构建一个原型,并且我想专注于可用性(布局、导航性等)并将主题留到以后(我的品味很差,所以这可能会由其他人完成)

我知道 ASP.NET 具有即时切换主题的功能,但是我必须如何设计 WebForms 才能使其以后变得容易呢?

  • 我应该创建带有类属性的控件,该类属性指向未来 CSS 中将存在的内容吗?
  • 或者我是否只是创建控件而不用担心这一点,并且当我们创建主题时它会很容易处理?
有帮助吗?

解决方案

如果您打算使用 ASP.NET 主题, ,然后您可以通用地设计所有控件并稍后添加外观。根据设计的复杂性(意味着文本框或网格视图等有多少种不同的样式),这可能不会为您节省大量工作,但它是使用内置 .Net 支持进行主题化的一种方法。

确保使用 MasterPage,以便所有子页面都有一个共同的基础,并为所有元素提供良好的 ID,因为您仍然需要亲自使用 CSS 将它们组合在一起。

这是一个体面的链接 主题和皮肤教程. 。知道将来需要做什么才能添加它将使现在的设计变得更容易。

其他提示

我想提出完全忽略主题并且只使用 CSS 的论点。我一直不清楚主题能增加什么价值;这是一种非常微软特有的方法,并且其输出并不总是符合标准。通过使用 CSS,您将扩大能够从事您的项目的潜在设计师的范围,并且您将有更好的机会拥有一个跨浏览器且符合标准的网站。

如果其他人稍后要设计这个样式,我只是确保您提供足够的“钩子”,以便他们能够设计这个。这意味着将 CSS 类添加到您所做的几乎所有样式类似的内容中,并在适当的情况下使用 CSS 类将内容包装在 div 或 span 中,例如

     <div class="ButtonContainer">
       <asp:linkbutton runat="Server" cssclass="Button Cancel" command="Save" text="Save" />
       <asp:linkbutton runat="Server" cssclass="Button Save" command="Cancel" text="Cancel" />
     </div>

如果您对 CSS 没有深入的了解,并且没有内部命名约定或标准样式表,那么您将不知道如何构建您的 div 和类。在我们的商店中,我们处理此问题的方式是程序员只需编写标准 ASP.NET 标记,而设计人员则仔细检查并添加与他们将开发的样式表配合使用的 div、span 和类名称。

皮肤可能是答案,但其中的一些内容让我感到厌烦(也许是因为我不喜欢特定于该供应商,并且我希望我的技能适用于 .NET 之外的其他 Web 语言和平台)。我更喜欢在所有 ASP.Net 控件上使用 CssClass 属性,并仔细对其他所有内容进行分类,并使用尽可能多的语义标记。然后,当我设置控件并使其工作时,我使用 CSS 来设置所有内容的样式(尽管此时我通常必须调整 HTML 和 JavaScript 内容)。

与我一起工作的另一位开发人员更喜欢按照 Microsoft 的方式使用皮肤和页面指令等来完成所有事情。这可能是最好的方法,但在我看来,它将太多的演示文稿混合到应用程序的中间和后端。

只需将控件包装在 div 中即可。最终将使布局/样式变得更加容易

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top