0

我有一个使用 jQuery UI(特别是 jQuery UI 主题)进行样式设置的网站。我已将 Infragistics Ignite UI 网格控件添加到该网站。使用我选择的 jQuery UI 主题,Ignite 网格看起来不是很好,但使用网格提供的默认主题看起来非常好。

不幸的是,网格主题也使用了 jQuery UI 主题选择器,所以我遇到了问题。我有两个定义完全相同的选择器的 CSS 文件。一个我想应用于整个页面。另一个我只想应用于特定的 div(即包装 Ignite 网格的 div)。

有没有一种简单的方法可以强制 CSS 文件仅适用于单个 HTML 元素?目前,我已将div.igIgnite 样式表中的所有选择器放在前面,但这是一个容易出错的繁忙工作,每次应用更新时都需要重做,所以我不太喜欢这种解决方案。

4

2 回答 2

2

如果不修改其中一个 jQuery UI 主题,就无法做到这一点。

这是我认为在每次更新时修改 Ignite 文件的最简单方法:

  • 从评论中删除文件(因此缩小的文件是可以的)
  • 搜索“ }”并替换为“ } .ig(space)”(当然不带引号)
  • .ig(space)文件开头加“ ”,最后去掉
  • 完成后,每个选择器都以父级开头.ig

它仅在没有媒体规则及其双右大括号时才有效(并注意开头的@import、@charset 和@font-face,以防万一)

于 2013-05-27T18:12:21.977 回答
0

将要忽略的 CSS 文件导入要使用的 CSS。

use_me.css里面,写在顶部

@import url("ignoreme.css");

这将覆盖ignoreme.css与冲突的所有 CSS 样式useme.css

编辑

仅当两个文件中的选择器具有相同的特异性时,这才有效。

+ 特异性

于 2013-05-27T17:41:59.253 回答