如何禁用元素上的所有样式?是否可以将所有元素属性设置为none的所有属性?

时间:2010-10-29 11:40:36

标签: css

我在我的页面中嵌入了telerik的radEditor ..从主页继承css属性..就像H2是蓝色的......有背景色......

我应该在我的自定义css类(专门为radEditor制作的那个)中输入什么内容,以便它覆盖所有主页的css属性并且不对标题标签应用任何内容?

我写了这个: -

h2{color:black;background-image:none;}

仍然h2标签看起来不小我的radEditor下拉列表中的H1标签..仍然是从主页面应用css。我需要搜索在母版页中应用的所有属性并设置在我的自定义css文件中,它们一个接一个?/

4 个答案:

答案 0 :(得分:7)

AFAIK,CSS中没有这种可能性。您有两种选择:

1:尽可能选择H2元素,然后应用css删除样式。伪代码,因为我不知道HTML的结构:

#master_page #page h2{font-style:none; etc...}

2:使用JavaScript动态删除所选元素的所有格式。然而,这个解决方案意味着你根本无法重新构造元素,所以我想这不是你想要的。只是为了完成:)

答案 1 :(得分:5)

您可以在样式中使用!important关键字覆盖以前应用的所有样式:

h2{
   color:black !important;
   background-image:none  !important;
}

话虽如此,它通常是不推荐,因为它可能会为其他人应用样式带来问题,除非他们发现正在使用! important

答案 2 :(得分:1)

CSS中没有用于重置的简写命令。您必须显式覆盖每个CSS属性。

答案 3 :(得分:1)

我有类似的问题,Azeo的#2为我工作:

 function RadEditorLoad(editor, eventArgs) {

        // Set these Editor Styles to prevent them from being inherited
        // from the master page.  
        editor.get_contentArea().style.fontFamily = 'Arial';
        editor.get_contentArea().style.backgroundColor = 'White';
        editor.get_contentArea().style.textAlign = 'Left';
        editor.get_contentArea().style.padding = "5px";
    } 


  <telerik:RadEditor ...         OnClientLoad="RadEditorLoad">

<强>更新 我最终使用ContentAreaCssFile属性来支持上面的解决方案。如下所述: http://demos.telerik.com/aspnet-ajax/editor/examples/settingcontentareadefaults/defaultcs.aspx。 我只能重置对我很重要的特定样式,不幸的是不是所有样式。