【问题标题】:How to reuse css styles from Telerik RadControls for ASP.NET Ajax如何为 ASP.NET Ajax 重用来自 Telerik RadControls 的 css 样式
【发布时间】:2010-11-27 17:32:08
【问题描述】:

Telerik RadControls 内置了对皮肤的支持,并使用 CSS 来设置所有控件的样式。但是,当将这些控件插入现有网站时,将现有网站的样式与 RadControls 自己的样式合并的最佳方法是什么?

更新:鉴于以下选项(感谢 Zhaph):

  1. 将 RadControl 的 CSS 添加到我的网站
  2. 让 RadControl 看起来更像我的网站
  3. 将我的网站 CSS 选择添加到 RadControl 样式列表

最好的选择是什么?

选项 2 将要求我保持两组样式。 所以最好是选项 1。这将允许在整个站点重用 RadControls 样式系统,例如按钮和简单的控件看起来一样。

更新 2(从我的回答中移出): 我最终做了一个组合。使用 the FormDecorator 可以在我自己的按钮和输入上重用 RadControls 样式。此外,将 Telerik 提供的皮肤复制到我的 ASP.Net 主题中可以自定义皮肤。

【问题讨论】:

  • 您的意思是如何将 RadControl 的 CSS 添加到您的站点,或者如何使 RadControl 看起来更像您的站点,或者如何将您的站点 CSS 选择添加到 RadControl 样式列表?
  • 哪个最简单。我知道 RC 可以被设计成看起来像我的网站,但接下来我必须保持两组样式。

标签: asp.net css ajax telerik


【解决方案1】:

我不得不承认,我已经有一段时间没有使用 RadControls 了 - 我们在一些 CMS 网站上使用了 CMS RadEditor,它可以自动获取您的样式表,并将类添加到它的列表中,或者您可以手动添加一些。

查看文档,有些内容可能会有所帮助:

  1. RadEditor CSS Classes and Their Use - 虽然这些通常是由我认为的控件自动添加的?
  2. 1. 的链接还告诉您如何执行此操作
  3. 几个选项
    • External CSS Files,声明“默认情况下,RadEditor for ASP.NET AJAX 使用当前页面中可用的 CSS 类”,但也显示了如何加载其他样式表。
    • Using the ToolsFile.xml - 向下滚动到 元素。

【讨论】:

    【解决方案2】:

    作为此线程的更新,现在有一个用于 Telerik AJAX 和 MVC 工具的在线“样式生成器”,可以对内置皮肤进行可视化配置/自定义:

    http://stylebuilder.telerik.com/

    此工具无需了解每个控件的 CSS 类定义,让您可以轻松自定义其中一个内置主题以更好地匹配您的网站。

    【讨论】:

    • 不是问题的答案
    【解决方案3】:

    我只是想补充一下; 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 控件非常有用,这种方式仍然是动态的,并且会随着皮肤的任何变化而变化。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多