Jquery'addClass'有时会失败,但css却没有

zsh*_*arp 1 javascript jquery

在某些情况下,这不起作用:

("#id").addClass("class");
Run Code Online (Sandbox Code Playgroud)

而这将:

("#id").css('color','Blue');
Run Code Online (Sandbox Code Playgroud)

为什么会失败以及如何添加课程呢?

mic*_*man 5

关键概念:CSS特异性

从CSS特异性:你应该知道的事情:

  1. 特性决定了浏览器应用哪条CSS规则.
  2. 特殊性通常是你的CSS规则不适用于某些元素的原因,尽管你认为它们应该.
  3. 每个选择器都在特定层次结构中占有一席之地
  4. 如果两个选择器应用于同一元素,则具有更高特异性的元素将获胜.
  5. 有四个不同的类别定义给定选择器的特定级别:内联样式,ID,类+属性和元素.
    ...

漂亮的小cheatsheet:

CSS特异性备忘单http://www.allapis.com/CSS-Specificity-Cheat-Sheet/CSS-specificity-cheat-sheet.PNG