Jquery 如何从css中排除特定控件?
我有一个在HTML中呈现为Jquery 如何从css中排除特定控件?,jquery,asp.net,css,telerik,css-selectors,Jquery,Asp.net,Css,Telerik,Css Selectors,我有一个在HTML中呈现为ul 当我在我的aspx中使用特定的css尝试它时,它不会以正确的方式出现,因为css文件具有ul和li选择器 来自firebug: 现在我想从(#tabContaier ul,#tabContaier Li)中排除此控件 我想用一些通用的方法来解决这个问题,特别是使用telerik控件 编辑: 应用级联技术后: <telerik:RadTreeView ID="RadTreeView1" runat="server" CheckBoxes="True"
ul
当我在我的aspx中使用特定的css
尝试它时,它不会以正确的方式出现,因为css文件具有ul
和li
选择器
来自firebug:
现在我想从
(#tabContaier ul,#tabContaier Li)中排除此控件
我想用一些通用的方法来解决这个问题,特别是使用telerik
控件
编辑:
应用级联技术后:
<telerik:RadTreeView ID="RadTreeView1" runat="server" CheckBoxes="True" Height="200px"
TriStateCheckBoxes="true" CheckChildNodes="true" Skin="rad_rv" EnableEmbeddedSkins="false" >
如果无法更改指定了这些规则的.CSS
文件,有几种方法可以覆盖CSS中的规则
层叠:顾名思义,在CSS中,无论是否在同一工作表中,后面编写的规则都会覆盖前面编写的规则
特定性:比要用选择器覆盖的规则更具体
内联样式:使用属性style
在HTML元素中编写样式。强烈不建议这样做,因为您应该将演示文稿和内容分开(这是CSS的全部要点);然而,当您在javascript中重写它们时,这是通常的做法(见下文)。内联样式实际上只是特殊性的一个特例(最强);这就像说:“我是说确切地说这个元素在这里”
使用!重要提示
规则之后:将此作为覆盖的最后手段,如!重要信息
覆盖除用户定义的以外的任何内容!重要信息
标记的样式表
当然,由于您使用jQuery标记了您的问题,所以一般来说,您也可以使用jQuery和javascript来标记问题。但我不明白,在这种情况下,你为什么要这么做
例子
在您的例子中,更好的级联的例子是:在telerik样式表定义它们之后定义#tabContainer ul
。就这么简单。什么时候导入样式表?将它移到您自己的样式表之上,您将确保您将要编写的所有内容都将覆盖在那里编写的内容
特异性的一个例子是定义类似于#container#tabContainer ul
的内容。这将覆盖不太具体的#tabContainer ul
规则
内联样式意味着您实际将硬编码的样式放入元素中,如下所示:
<ul class=rtUL rtLines" style="height: 40px;">
#tabContainer ul {
height: 40px !important;
}
如果无法更改指定了这些规则的.CSS
文件,有几种方法可以覆盖CSS中的规则
层叠:顾名思义,在CSS中,无论是否在同一工作表中,后面编写的规则都会覆盖前面编写的规则
特定性:比要用选择器覆盖的规则更具体
内联样式:使用属性style
在HTML元素中编写样式。强烈不建议这样做,因为您应该将演示文稿和内容分开(这是CSS的全部要点);然而,当您在javascript中重写它们时,这是通常的做法(见下文)。内联样式实际上只是特殊性的一个特例(最强);这就像说:“我是说确切地说这个元素在这里”
使用!重要提示
规则之后:将此作为覆盖的最后手段,如!重要信息
覆盖除用户定义的以外的任何内容!重要信息
标记的样式表
当然,由于您使用jQuery标记了您的问题,所以一般来说,您也可以使用jQuery和javascript来标记问题。但我不明白,在这种情况下,你为什么要这么做
例子
在您的例子中,更好的级联的例子是:在telerik样式表定义它们之后定义#tabContainer ul
。就这么简单。什么时候导入样式表?将它移到您自己的样式表之上,您将确保您将要编写的所有内容都将覆盖在那里编写的内容
特异性的一个例子是定义类似于#container#tabContainer ul
的内容。这将覆盖不太具体的#tabContainer ul
规则
内联样式意味着您实际将硬编码的样式放入元素中,如下所示:
<ul class=rtUL rtLines" style="height: 40px;">
#tabContainer ul {
height: 40px !important;
}
非常感谢。。这里的主要问题是:telerik控件有一个特殊的情况,它们使用皮肤文件,所以我无法访问它们,此外,我写渲染结果,但控件本身是以特定的方式写在.aspx中的。你可以看看链接示例,以了解我的确切意思。\你的名字我不熟悉telerik,但我看到的是:在示例代码中,有一个部分(在
标记中,
正下方)可以定义样式。在呈现页面示例中,我看到这些样式在导入的样式表之前呈现。我不知道这是否是设计的(这将是一个糟糕的设计),或者你可以改变它。如果可以将自己的样式放在导入的样式之后,则可以使用级联(选项1)。如果你不能,不用担心,只需使用特殊性(选项2)。让我们注意到步骤3和4通常被认为是不好的做法,所以请尝试坚持级联css和增加的属性specificity@Luca我的回答清楚地表明,强烈不建议第3点,第4点应该是最后的选择。不过,请记住,在某些绝对合法的情况下,您可能会希望使用这些选项;如果没有,它们就不会在规范中。问题是滥用。让我们说,你最好在使用3或4之前知道你在做什么