【问题标题】:Removing Kendo UI Window's dynamic styles移除 Kendo UI Window 的动态样式
【发布时间】:2014-10-22 15:38:13
【问题描述】:

我正在尝试删除默认样式,即 Kendo UI 的窗口弹出样式。它们目前被动态放入样式标签中,并且可以通过 kendoWindow() 方法进行更改。

但是我希望将它们删除,以便我可以使用自己的样式表来控制窗口。也许有人对 Kendo UI 有经验,或者有想法删除这些样式,以便我可以从标准 CSS 开始。

我尝试清除 style 属性,但它破坏了窗口中不应出现的一些内容。

   $('.k-widget.k-window').attr('style', '');

【问题讨论】:

  • Kendo 从 JavaScript 而非 CSS 获取其内联 CSS。它不能被 CSS 覆盖。内联 CSS 在特异性方面胜出。
  • 好的,所以使用!Important
  • 如果你想要定义自己的样式...为什么不在他们的后面包含你自己的样式?
  • 我没有意识到 !important 覆盖了内联样式!很好的答案@CSharper

标签: javascript jquery kendo-ui


【解决方案1】:

你可以覆盖任何你喜欢的剑道风格:

  • 通过更具体的 CSS(参见 specificity rules
  • 使用 javascript 或 JQuery 注入 css 类或样式(即 addClass)

【讨论】:

  • 实际上,您引用的 Mozilla Developer Network 文章“特异性规则”有很多错误:1)在“Crescent [ehh?] order of specificity”下,它声称类、属性和伪类选择器越来越多特异性;他们没有,他们是平等的(见 W3C)。 2) 同一个列表完全省略了伪元素。 3)在“您可以使用它而不是使用它”下,它显示“通过在您选择的元素之前指示一个或多个元素......”,然后使用示例:div#test span { color: green }。错了,那个 eg 更具体不是因为额外的元素,而是因为它包含的 id。
  • [对不起,MDN 文章有太多错误,无法挤进一条评论!] 4) 在标题“你应该在什么时候使用它”下,它说在“你有一个全局 CSS 时使用 !important”全局设置站点视觉方面的文件”。不,您仍然应该尝试使用更具体的选择器。 !important 是最后的手段。另外文章很不清楚;例如在“它是如何计算的?”它说“特异性是根据每个选择器类型的计数的串联计算的”,但没有解释“串联”。等等; MDN 在这方面做得不是很好。
  • 我看看能不能找到更好的资源。我认为可以编辑该页面(?),因此请随时更正您在此处看到的错误,而不是在此处粘贴它们。 ;) 无论如何,对于他的问题,只需要基本的特异性规则,这个页面就足够了。
  • 嗯。谢谢你,我没有意识到编辑 MDN 对所有人开放。我可能只是看看这样做。虽然我倾向于撕掉整个页面并重新开始,但当前的作者可能不喜欢!
  • 嘿伙计们,答案是停止使用剑道!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多