2

1)如果我创建了一个主题和一个皮肤文件以及一个与该主题一起使用的 css 文件,皮肤文件是否会自动获取我创建的 css 文件?如果一个主题下有多个 css 文件会怎样?

2) 主题中的 css 文件会覆盖全局 css 文件吗?我创建了一个全局的,具有 css 文件的主题没有将背景颜色更改为我在主题中拥有的,但是没有 css 文件的主题确实将背景颜色更改为全局的css 文件。

3)看起来皮肤和css文件是一样的?我不能只创建一个主题并在主题中使用 css 文件而不是皮肤吗?皮肤是否仅适用于 asp.net 服务器控件?

4

3 回答 3

4

我不喜欢蒙皮,更喜欢只使用普通的 ol CSS。这正是皮肤的本质,但非常有限。我说放弃皮肤并坚持使用 CSS 文件。

于 2009-10-12T16:11:41.517 回答
3

App_Themes 文件夹中可以有许多主题文件夹。一个 ASP.Net 主题可以包含许多皮肤文件和许多 css 文件。

  1. 是的,皮肤文件知道 CSS 文件。当您应用主题时,您的页面会自动识别主题中的所有 .css 文件。
  2. 我不知道。测试是唯一的出路。
  3. 不,.skin 文件与 .css 文件不同。是的,您可以只在主题中使用 css 文件并跳过皮肤。是的,皮肤只是用于 asp.net 服务器控件。

主题与级联样式表

主题类似于级联样式表,因为主题和样式表都定义了一组可以应用于任何页面的通用属性。但是,主题在以下方面与样式表不同:

  • 主题可以定义控件或页面的许多属性,而不仅仅是样式属性。例如,使用主题,您可以指定 TreeView 控件的图形、GridView 控件的模板布局等。
  • 主题可以包括图形。
  • 主题不像样式表那样级联。默认情况下,由页面的 Theme 属性引用的主题中定义的任何属性值都会覆盖在控件上以声明方式设置的属性值,除非您使用 StyleSheetTheme 属性显式应用主题。有关详细信息,请参阅上面的主题设置优先级部分。
  • 每个页面只能应用一个主题。您不能将多个主题应用于页面,这与可以应用多个样式表的样式表不同。

引用自:ASP.NET 主题和皮肤概述


我的意见:

一般来说,如果你对 CSS 有很好的理解,你实际上并不需要 .Skin 文件,但主题仍然很有用。

于 2009-10-12T16:42:42.203 回答
2

asp.net 中的主题有点混乱,它们有点 css 和有点挑剔。

坚持使用普通的 css 并创建自己的皮肤框架(例如:配置的 css 文件夹) 使用普通 css 的 jQuery 插件之类的东西会更容易,并且与了解普通 css 的设计人员一起进行跨浏览器开发会更容易。

于 2009-10-12T16:18:26.633 回答