Telerik RadControls内置了对皮肤的支持,并使用CSS来设置所有控件的样式。但是,将这些控件插入现有网站时,将现有网站的样式与RadControls自己的样式合并的最佳方法是什么?
更新:鉴于以下选项(感谢Zhaph):
什么是最好的选择?
选项2要求我保持两套样式。 因此优选选项1.这将使得能够在整个站点上重用RadControls样式系统,例如,按钮和简单的控件看起来一样。
更新2(从我的回答中删除): 我最终做了一个组合。使用the FormDecorator可以在我自己的按钮和输入上重用RadControls样式。此外,将Telerik提供的外观复制到我的ASP.Net主题中,可以自定义外观。
答案 0 :(得分:2)
我必须承认,我有一段时间没有使用RadControls - 我们在一些CMS网站上使用了CMS RadEditor,这可以自动获取样式表,并将类添加到其列表中,或者您可以手动添加一些。
查看文档,有些内容可能会有所帮助:
答案 1 :(得分:1)
我只是想补充一下; FormDecorator仅将css应用于某些类型的控件。如果您有一个未设置样式的控件,您可以访问Telerik资源,如下所示:
.cs文件 - 拥有如下公共财产:
public string HeaderDivBackgroundURL
{
get
{
{
string backgroundURL = string.Empty;
string skin = ((MainMaster)Page.Master).AppSkin;
backgroundURL = Page.ClientScript.GetWebResourceUrl(typeof(RadSplitter), "Telerik.Web.UI.Skins." + skin + ".Splitter.slideTitleContainerBgr.gif");
return backgroundURL;
}
}
}
在aspx页面中(在RadCodeBlock中),只需要一个内部样式表来从该属性中读取:
<tel:RadCodeBlock runat="server">
<style type="text/css">
.telerikBackgroundMock
{
background: url('<%= HeaderDivBackgroundURL %>') repeat-x;
}
</style>
</tel:RadCodeBlock>
我发现这对于将Telerik皮肤应用于非Telerik控件非常有用,其方式仍然是动态的,并随着皮肤的任何变化而变化。
答案 2 :(得分:0)
作为此线程的更新,现在有一个用于Telerik AJAX和MVC工具的在线“样式生成器”,可以对内置外观进行可视化配置/自定义:
http://stylebuilder.telerik.com/
此工具无需了解每个控件的CSS类定义,您可以轻松自定义其中一个内置主题,以便更好地匹配您的网站。