Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 可以创建一个完整的css;。“类”;拥有它';它的特殊性如同!重要吗?_Jquery_Css_Class_Css Specificity - Fatal编程技术网

Jquery 可以创建一个完整的css;。“类”;拥有它';它的特殊性如同!重要吗?

Jquery 可以创建一个完整的css;。“类”;拥有它';它的特殊性如同!重要吗?,jquery,css,class,css-specificity,Jquery,Css,Class,Css Specificity,我在jQueryUI小部件方面做了大量工作,由于我需要解决的一个疏忽,主题变得越来越难 考虑一下这个问题: <div id="node" class="ui-widget"> <div class="ui-widget-content"> </div> </div> 那么这个jquery <script> $(function() { $('#node').hover(function (){

我在jQueryUI小部件方面做了大量工作,由于我需要解决的一个疏忽,主题变得越来越难

考虑一下这个问题:

<div id="node" class="ui-widget">
    <div class="ui-widget-content">
    </div>
</div>

那么这个jquery

<script>
 $(function() { 
       $('#node').hover(function (){
           $(this).toggleClass("ui-state-error");
       });
 }); 
</script>

$(函数(){
$('#节点')。悬停(函数(){
$(this.toggleClass(“ui状态错误”);
});
}); 
我希望ui状态错误为!对嵌套div很重要。这是伪代码,但我发现在容器中有css交换,而子容器(basicali)忽略它的情况下会发生这种情况。更糟糕的是:如果我希望能够在jQuery中覆盖,比如说“backgroundcolor=ui状态错误:背景色100%知道它不会崩溃,因为我不一定“知道”背景对于所讨论的元素是重要的

这里有一个很好的例子


编辑我建议关闭此问题,因为没有人尝试回答,只是偏离了原始帖子的本质太多了。

首先
!重要的
适用于CSS规则中的一个特定声明。它不适用于类。因此,“不“您不能创建类
!重要信息

第二关,
!重要信息
只是CSS特性的一部分。您还可以使用其他方法使规则成为具有优先权的更具体的规则(例如引用父链中的id而不仅仅是类。当我编写CSS时,使用!important是我最后一个可能的选择-我更愿意使用其他特殊性解决方案来解决覆盖问题。通常,如果您控制所有CSS,这很容易避免使用
!important
。如果您必须覆盖某些需要你不能控制,那么有时候它很方便


如果您的jQuery代码要在对象上切换一个类,那么您必须精心设计CSS规则,以便添加/删除该类会使正确的CSS声明具有优先权。为了让我们进一步帮助您,您需要向我们展示HTML和CSS的相关部分,以便我们就如何解决此问题提供建议您的优先级/特异性问题。

不,创建一个完整HTML类的唯一方法是在CSS中的每个属性设置之后添加
!important
声明。有什么疏忽?在尝试应用之前,您可能应该仔细阅读它,以及它是如何工作的!对整个类很重要。还值得注意的是!important应该非常谨慎地使用。通常只有浏览器供应商(如Mozilla)才使用它。比其他人定义的规则更晚的规则是“优先”(覆盖以前的规则)例如:如果在
a
之前有
a:hover
,那么
a:hover
中也在
a
中指定的属性将不适用,因为
a
中的规则覆盖了
a:hover
中的规则。
重要的
无论如何与特定性完全无关。
!重要的
适用对于一个CSS声明,而不是规则。例如,在
a{color:blue;background:white!important}
中,只有
background
的声明变得重要;同一规则中的另一个声明不受影响。我试图应用一些将导致所有悬停效果的东西,使子div具有“蓝色”背景(在这个jQuery UI主题中,它是蓝色的)在悬停状态下,它与我正在制作的jQueryUIGrid插件@Juan中的第235行有关,我不同意-我认为这是强制的
积极性的一个钝性切换,在一个应该有全360度三维控制的区域中(例如:其中是
!不重要的
删除
内联样式中属性开关的
声明中的
(或例如:其中是
!内联状态的重要性
)那种thing@JuanMendes Thinking!对于不了解CSS特性的人来说,重要是无用的。我完全同意MacLovin的观点,这是一个希望在未来能够解决的问题。在理想世界中!重要不是声明特定的,而是一个将其应用于整个类的选项,我同意这是必要的.@Juan Mendes-你的输入是不必要的,也是侮辱性的。