【问题标题】:Using jQuery UI css styles for my own HTML elements为我自己的 HTML 元素使用 jQuery UI css 样式
【发布时间】:2012-08-02 06:51:46
【问题描述】:

使用 jQuery UI 为我提供了这些漂亮的样式表。这些适用于小部件,... jQuery UI。但是我如何将这些样式应用到我自己的 HTML 元素以具有相同的外观和感觉?

当我更改 jQuery UI 主题时,我希望我的页面进行相应更改。我知道有类似的问题,例如“jQuery UI Themeroller Question”。据说我只能打开 CSS 并手动将 CSS 类应用于我的元素。

没有更好的/官方的方法吗?尤其是使用Theme Switcher,我可以轻松拥有可自定义的 UI。

-- 补充原来的问题--

好的,你们都解释一下,我必须手动将 css 类应用于我的元素。我很欣赏这些信息,你肯定比我有更多的 CSS 经验。但是,当我以后想要更改样式时,我必须在很多地方更改这个(jQuery UI)类 - 例如所有 td 元素。所以在我的 CSS 文件中,我更喜欢通过选择器应用样式。

问:我可以使用选择器重新应用(jQuery UI css 的)类,例如“将类 XYZ 应用到 div "ABC" 中的所有表头吗?

我可以通过 jQuery 选择来做到这一点,但我可以在“我的 css”中做到这一点吗?

【问题讨论】:

  • 为什么不简单地将 jquery-UI css 类添加到您的元素中?也许我不明白你的问题
  • 你确实明白我的问题。是的,我可以通过 CSS,找到最好的 CSS 类并将其手动添加到我的元素中。但这意味着添加这个类,例如对所有 td 元素,不是吗?看起来不太好看,也很难改变,还是我错了?
  • 只需通过应用其他 css 类来更改 css 类而不是元素...只需更改您的样式表,所有内容都将被设置为新样式
  • 我编辑了我的答案来回答你的跟进
  • @Fender:我不应该改变 jQuery UI css,所以当我写“td class="SomeJQueryClass”时,我该怎么做?

标签: javascript jquery html jquery-ui


【解决方案1】:

为了回答您的问题,that官方 主题化您自己的元素的方式,这些元素不是由 jQuery UI 小部件构建的。您必须将特定的类应用到您的元素,它们最终看起来就像 jQuery UI 中的其他小部件。

【讨论】:

  • 感谢您的帮助,底线是-正如您所说-似乎没有其他办法。
【解决方案2】:

在 Firefox/Chrome 中

右键单击要复制其样式的元素,然后选择 inpsect element。请注意它属于哪些类。

将这些类添加到您的元素中

回答您上面的 td 问题:

你可以在你的 css 中创建一个 td 类,并将 jquery ui css 文件中的样式复制到它:

td{
 //Styles go here
}

另外,您问“将 XYZ 类应用到我在 div "ABC" 中的所有表头?”将此添加到您的 css 文件中

如果 div 的 ID 是 ABC

div#ABC th{
   //Styles Go Here
}

如果 div 类是 ABC

div.ABC th{
   //Styles Go Here
}

【讨论】:

  • 谢谢,基本上你上面已经说过了,“你可以从 jQuery 中复制样式”(td 示例)。我想要的不是复制而是引用,例如:td{jQueryStyleX}。所以 a) 当我更改主题时,我不需要再次复制,b) 修复了 jQuery UI,我会自动获取更新,c) 当我想更改为 jQueryStyleX 时,它在一个地方。或者我可以在css中写“td someClass”吗,从来没有见过。
  • 您要问的是css类继承,它不存在。你必须通过 jquery 来做到这一点
  • 我想说我宁愿使用现有的类并通过选择器应用它。恕我直言,我不会称这种继承,对我来说,在 CSS 上下文中,内部标签更多地继承了外部的样式(例如,如果没有被覆盖,“tr”是“table”的字体)。无论如何,非常感谢您的帮助和反馈。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多