我有两个包含jquery-ui.css的WordPress插件,最后一个加载的插件会覆盖第一个插件的css。我希望这两个主题都加载。我知道jQuery主题构建器支持CSS作用域,但是这两个插件都没有利用这个特性,并且编辑插件不是一个合理的选择(因为更改将在我下次更新插件时被覆盖)。有没有什么方法可以通过编程实现作用域,通过在主题中添加一些JavaScript?
发布于 2011-06-13 16:12:58
首先,您必须能够通过使用一些class
标记插件的容器(或使用额外的包装)来确定至少一个插件输出的范围。要使该class
生效,您需要下载一个new package build填充CSS Scope
,其中包含您的class
选择器,即.class
。Theme Folder Name
是您的新作用域css将进入的地方。有关详细信息,请查看this page。
。
WordPress
为了在WordPress下保持清晰,注册新的CSS。在主题的functions.php
中
wp_register_style( 'myScopedjQueryUICss', get_stylesheet_directory_uri() . '/scopedjQueryUICssDirectory/ui.all.css' );
最后,在您需要的地方将此样式排入队列。要做到这一点,常见的方法是将以下行挂接到wp_print_styles
操作。
function hookScopedCss() {
if ( wp_style_is( 'myScopedjQueryUICss' ) ||
wp_style_is( 'myScopedjQueryUICss', 'done' ) )
{ return; }
wp_enqueue_style( 'myScopedjQueryUICss' );
}
add_action('wp_print_styles', 'hookScopedCss' );
https://stackoverflow.com/questions/6327727
复制相似问题