ASP.NET xx 主题(删除重复)

发布于 2024-08-11 10:42:14 字数 538 浏览 4 评论 0原文

我使用主题已经有一段时间了,当我试图重构我的代码时,我突然想到了一个想法。我的主题总是分为两部分,一个指导基本布局问题,另一个指导颜色、图像等。每次,我们必须为新客户进行设计,我们切换主题,然后就完成了。然而,这里隐藏的问题是我们必须在每个主题中复制布局 CSS。 我的主题文件夹的典型示例是: 应用程序主题 - 默认 - 布局CSS - 颜色CSS - 图片 - 客户1 - 布局CSS - ColorCSS_Client1 - 图片 - 客户2 - 布局CSS - ColorCSS_Client2 - 图像

如果您注意到,LayoutCSS 在所有主题中都重复出现。消除重复的一种简单方法是将其从 App_Themes 中删除并将其放入单独的文件夹中,然后从母版页中引用它。这种方法的缺点是,我必须在我使用的每个页面(不使用母版页)中手动引用样式。

现在的问题是……我是否可以拥有一个适用于我所有页面的全局主题,以及一个由我的 web.config 控制的本地主题(如常规主题)。并且它们的行为都是同步的。

谢谢,

萨希达尔·科库

I have been using themes for a while, and off late when I was trying to refactor my code, a thought came to mind. My theme is always split into two pieces, one that guides the basic layout issues, and the other that guides the colors, images, etc. Everytime, we have to design for a new client, we switch the themes, and we are done. However, the hidden issue here is that we have to make a copy of the layout css in every theme.
A typical example of my themes folder would be :
App_Themes
- Default
- LayoutCSS
- ColorCSS
- Images
- Client1
- LayoutCSS
- ColorCSS_Client1
- Images
- Client2
- LayoutCSS
- ColorCSS_Client2
- Images

If you notice, the LayoutCSS is being repeated in all the themes. One simple way to eliminate the duplication is to remove it from App_Themes and put it in a separate folder, and reference it from the masterpage(s). The downside to that approach is that, I have to manually reference the style in every page I use (that does not use masterpages).

Now, the question is....is there anyway I can have a global theme that applies for all my pages, and a local theme that is controlled from my web.config (like regular themes).And both of them behave in sync.

Thanks,

Sashidhar Kokku

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

删除会话 2024-08-18 10:42:14

你可以将你的布局CSS文件放在另一个目录中,例如你的网站根目录,然后在每个主题中放置一个CSS文件,其中只包含

@import“/GlobalLayout.css”

这样你只有一个文件中的CSS,但得到ASP.NET 主题自动链接的好处

http://css-discuss.incutio.com/ ?page=ImportHack

you could place your layout CSS file in another directory, for example your site root, then place a CSS file in each theme which simply contains

@import "/GlobalLayout.css"

That way you only have the CSS in one file, but get the benefits of ASP.NET Theme's auto-linking

http://css-discuss.incutio.com/?page=ImportHack

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文