Telerik RadWindow 和标准 CSS 冲突(在 Internet Explorer 中)

Posted

技术标签:

【中文标题】Telerik RadWindow 和标准 CSS 冲突(在 Internet Explorer 中)【英文标题】:Telerik RadWindow and standard CSS Conflicts (in Internet Explorer) 【发布时间】:2012-03-10 12:04:49 【问题描述】:

我正在使用用于 ASP.NET AJAX 的 Telerik RadControls 在 ASP.NET/C# 中做一个项目,并且在设计网站时付出了很多努力。现在突然间 RadWindow 威胁到所有的 CSS 样式。这是一个非常特殊的问题,并且仅适用于 Internet Explorer。有人请帮我纠正这个..

我网站中几乎 100% 的内容都使用 CSS(不是 CSS3)。一切看起来都很好(在所有浏览器中,包括 IE),直到我在页面中添加了 Telerik RadWindow。 在这个 IE 没有呈现我的 CSS 样式之后,我的网站看起来就像一个完整的垃圾!! 但是其他浏览器,如 chrome 和 firefox 都可以完美运行。即使单独添加 RadWindowManager 而没有任何实际的 RadWindows 也会导致同样的问题。

注意:RadControls 的 CSS 看起来不错且没有任何问题。这仅适用于其他标准 html/ASP.NET 元素/控件。

我正在使用 Masterpage,如果我将 RadWindow/Manager 移动到 MasterPage,它会将错误过滤到所有子/内容页面,即所有子页面都没有应用 CSS 样式。但是我的 MasterPage 中的 CSS 样式没问题。我对这种行为完全感到困惑,找不到问题所在。

我还检查了 RadWindow 使用的 CSS,没有任何类/类名与我使用的任何类与内容页面中的元素发生冲突。上述所有问题仅适用于 INTERNET EXPLORER。 :(

有没有人遇到过这种问题?请帮助我,因为我迫切需要 RadWindow 并且无法从我的项目中消除它。

【问题讨论】:

【参考方案1】:

检查您是否没有达到 IE 中页面限制的 30 个样式表。如果您有很多样式表注册,IE 将不会全部解析它们并且您将缺少样式。其他浏览器不受此限制的影响。尝试将您的 CSS 合并为一个,或者如果您使用多个 RadControl,则将 RadStyleSheetManager 添加到您的母版页。

【讨论】:

伙计,你真是个天才。当然是这个糟糕的 IE 的 31 个样式表的限制造成了麻烦。这对我来说是一个更糟糕的消息。我可以合并我的样式表吗?还是我们也有“行数”限制?是的,我的页面中有多个 RadControl。我一定会添加一个样式表管理器。我正在使用 Telerik 的 Clear skin(我猜它被认为是 CustomSkin)。那么我应该为每个 Control 遵循 (telerik.com/help/aspnet-ajax/radstylesheetmanager.html) 这些步骤吗?请指导我..谢谢百万好友.. Ps:由于我使用的是 Clear Skin(custom),我必须为每个 RadControls 添加指向 .CSS 文件的链接。这肯定会咬我的“没有样式表”,这会阻止我为标准 HTML/ASP.NET 控件添加更多自定义表。那么添加 RadStyleSheetManager 是否会使浏览器将 Clear 皮肤的 .css 文件视为 ONE ? RadStyleSheetManager 只有在您使用内置皮肤时才会有所帮助。如果您为您的皮肤手动加载 .css 文件,那么您应该将它们组合成一个大的 .css 文件并加载它而不是单独的文件。例如,如果您有 ClearSkin/Window.css 和 ClearSkin/Grid.css 和 ClearSkin/Menu.css,您可以将它们全部合并到一个文件 ClearSkin/CombinedWindowGridMenu.css 中。确保只合并同一文件夹中的文件,以免破坏其中的链接。 非常感谢 lingvomir。我已将 Telerik 自定义皮肤的 CSS 合并为一个,并从我的 Masterpage 链接它。现在一切正常......你是救生员!!!! :) 干杯!!

以上是关于Telerik RadWindow 和标准 CSS 冲突(在 Internet Explorer 中)的主要内容,如果未能解决你的问题,请参考以下文章

Telerik RadWindow Javascript 向 ASP.NET 返回值

任务栏上没有显示Telerik RadWindow图标c#wpf [复制]

RadWindow图标未显示在任务栏中

如何关闭服务器端的radwindow并刷新父页面

如何使用JavaScript和CSS Grid使基于屏幕/视口大小的RadWindow响应

通过从服务器调用 javascript 来关闭 RadWindow