如何让子Style.css加载到最后,而不是落后于父Style.css?

时间:2016-07-20 作者:Fad

我的父样式。css首先加载,然后是我的子样式。css然后来自父主题的大量样式表加载第三个,以此类推。头部当前看起来如下所示:

<link rel="stylesheet" id="parent-style-css" href="http://localhost:8888/wp-content/themes/proland/style.css?ver=4.5.3" type="text/css" media="all">
<link rel="stylesheet" id="child-style-css" href="http://localhost:8888/wp-content/themes/proland-child/style.css?ver=4.5.3" type="text/css" media="all">
<link rel="stylesheet" id="bootstrap-css" href="http://localhost:8888/wp-content/themes/proland/css/lib/bootstrap.min.css?ver=1.0" type="text/css" media="all">
<link rel="stylesheet" id="bootstrap-touchspin-css" href="http://localhost:8888/wp-content/themes/proland/vendors/bootstrap-touchspin/jquery.bootstrap-touchspin.min.css?ver=1.0" type="text/css" media="all">
//////// more stylesheets loaded here
功能。子主题中的php当前如下所示:
<?php
  function my_theme_enqueue_styles() {
    $parent_style = \'parent-style\';

    wp_enqueue_style ( $parent_style, get_template_directory_uri() . \'/css/style.css\' );
    wp_enqueue_style ( \'child-style\',
      get_stylesheet_directory_uri() . \'/style.css\',
      array ( $parent_style )
    );
  }
  add_action( \'wp_enqueue_scripts\', \'my_theme_enqueue_styles\', 10000 );
?>
共有2种样式。父主题中的css
  • /风格首先加载的css(仅包含已注释的标题信息)
  • /css/样式。css(包含样式,)加载到所有脚本中的第10个

功能。父主题中的php将所有脚本排队,如下所示

function proland_scripts() {

    wp_enqueue_style( \'bootstrap\',                      get_template_directory_uri() . \'/css/lib/bootstrap.min.css\', false, \'1.0\');
    wp_enqueue_style( \'bootstrap-touchspin\',            get_template_directory_uri() . \'/vendors/bootstrap-touchspin/jquery.bootstrap-touchspin.min.css\', false, \'1.0\');
      // ETC.
      // ETC.
      // ETC.

}

function my_enqueue_styles() {

  /* If using a child theme, auto-load the parent theme style. */
  if ( is_child_theme() ) {
      wp_enqueue_style( \'parent-style\', trailingslashit( get_template_directory_uri() ) . \'style.css\' );
  }

  /* Always load active theme\'s style.css. */
  wp_enqueue_style( \'style\', get_stylesheet_uri() );
}
为什么是儿童风格。css加载排在父主题函数中的众多样式表之后的第二个而不是最后一个。php文件?

1 个回复
SO网友:Andy Macaulay-Brook

如果依赖项数组包含所有其他样式表的ID,那么您的应该最后加载。

将样式表排入队列时,尝试将其他样式表添加到数组中:

wp_enqueue_style ( \'child-style\',
  get_stylesheet_directory_uri() . \'/style.css\',
  array ( $parent_style, \'bootstrap\', \'bootstrap-touchspin\' )
);