Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Woocommerce核心脚本覆盖自定义CSS样式_Javascript_Jquery_Css_Wordpress_Woocommerce - Fatal编程技术网

Javascript Woocommerce核心脚本覆盖自定义CSS样式

Javascript Woocommerce核心脚本覆盖自定义CSS样式,javascript,jquery,css,wordpress,woocommerce,Javascript,Jquery,Css,Wordpress,Woocommerce,我正在为一家Woocommerce商店编写完全定制的CSS。大多数样式相对简单;我似乎无法设置“选择”下拉列表的样式: 加载页面后,JavaScript将覆盖select上的自定义样式,并应用/assets/css/selected.css中的核心样式。具体来说,它设置宽度:100%!重要信息 有没有一种方法可以停止这种行为(停止或覆盖脚本),而不必编辑核心文件 以前有人处理过这个问题吗 编辑 实际上,它并不适用于所有选择下拉列表。它似乎只适用于带有类所选容器的div,该容器取代了所选容器这是一

我正在为一家Woocommerce商店编写完全定制的CSS。大多数样式相对简单;我似乎无法设置“选择”下拉列表的样式:

加载页面后,JavaScript将覆盖select上的自定义样式,并应用
/assets/css/selected.css
中的核心样式。具体来说,它设置
宽度:100%!重要信息

有没有一种方法可以停止这种行为(停止或覆盖脚本),而不必编辑核心文件

以前有人处理过这个问题吗

编辑


实际上,它并不适用于所有选择下拉列表。它似乎只适用于带有类
所选容器的
div
,该容器取代了
所选容器
这是一个屏幕截图。

最简单的方法就是删除!重要信息,请参阅相应Javascript文件中的CSS属性。一般来说重要的是,应避免使用CSS属性。什么时候!如果从Javascript中删除了重要属性,您应该能够用自己的CSS覆盖特定的CSS属性

我个人觉得最简单的方法是取消所有样式的设置,将woocommerce.css中的样式复制到我自己的样式表中,然后在那里编辑它们

取消设置所有默认样式

// Don't load woocommerce style sheets
add_filter( 'woocommerce_enqueue_styles', '__return_false' );
将您自己的样式表排队

function wp_enqueue_woocommerce_style(){
    wp_register_style( 'woocommerce', get_template_directory_uri() . '/css/woocommerce.css' );
    if ( class_exists( 'woocommerce' ) ) {
        wp_enqueue_style( 'woocommerce' );
    }
}
add_action( 'wp_enqueue_scripts', 'wp_enqueue_woocommerce_style' );
将所有woocommerce样式复制到您自己的样式表中,并从中自由编辑它们。或者,您可以提高当前自定义样式表的优先级,使其在woocommerce.css之前加载。大概是这样的:

add_action( 'wp_enqueue_scripts', 'wp_enqueue_woocommerce_style', 15 );

这是否适用于所有“选择”下拉列表?你有例子吗?事实上没有。我刚刚编辑了这个问题来反映这一点。即使我没有用这个代码加载woocommerce样式表并禁用网站上的任何其他CSS,我仍然会将这个元素设置为100%宽度的样式这是一张截图。在这一点上,我确信元素是由一个核心脚本设计的,它加载一个核心样式表。处理核心文件的最临床的方式是什么?我明白了,你是在构建自己的主题还是买了一个?我想检查代码。我建议你系统地禁用JS文件,直到找到添加它的函数为止。好主意,这对我来说是可行的!我禁用了所选的脚本和样式。