【发布时间】:2013-09-30 10:23:27
【问题描述】:
我的应用程序中有datatable 插件。
为了修改UI外观,我对插件自带的样式表做了些微改动。
直接更改插件附带的样式表不是一个好主意,因为对插件的任何更新都会覆盖任何自定义更改。
有没有办法避免这个问题?
【问题讨论】:
标签: jquery css datatables stylesheet jquery-datatables
我的应用程序中有datatable 插件。
为了修改UI外观,我对插件自带的样式表做了些微改动。
直接更改插件附带的样式表不是一个好主意,因为对插件的任何更新都会覆盖任何自定义更改。
有没有办法避免这个问题?
【问题讨论】:
标签: jquery css datatables stylesheet jquery-datatables
您可以覆盖它使用的任何 CSS 类(参见完整列表 here)。
然后您只需创建另一个 CSS 文件,该文件将在 插件的 css 文件之后加载并覆盖它的类(或使用其他 CSS 技术来获得更高的 CSS 优先级)。
例如:
在原始 DataTables CSS (demo_table.css) 文件中,您可以找到:
.sorting_desc_disabled
{
background: url('../images/sort_desc_disabled.png') no-repeat center right;
}
假设您想要另一个箭头图标,您需要创建自己的 CSS 文件 (my_demo_table.css):
.sorting_desc_disabled
{
background: url('../images/my_own_disabled_arrow.png') no-repeat center right;
}
同样,您必须确保您的自定义 CSS 将在原始 CSS 之后加载,或者利用 CSS Specifity Rules 让您的自定义样式优先于原始样式。
【讨论】:
CSS Specifity Rules (coding.smashingmagazine.com/2007/07/27/…) 覆盖。
在单独的样式表中写入您需要的样式更改,其中选择器的优先级高于默认 DataTables 样式表中的选择器。
【讨论】: