主题看起来很难看-FOUC-页脚中加载的样式表

时间:2013-08-04 作者:Andrea Puiatti

我的主题看起来不错,到目前为止效果不错,但在加载整个布局的最初几秒钟内,它看起来有问题:http://andreapuiatti.de/screenshots/cssstylebug.png

我认为这是因为css加载有延迟,但甚至将wp\\u enqueue\\u样式放在了我的函数顶部。php没有任何区别

有没有办法解决这个问题?

遵循部分功能。php

// Load Stylesheets
function addMyStyles() {

    wp_register_style(\'reset\', get_template_directory_uri().\'/reset.css\');
    wp_register_style(\'style\', get_template_directory_uri().\'/style.css\', array(\'reset\') );

    wp_enqueue_style(\'style\');

}
add_action(\'wp_head\', \'addMyStyles\');

// Load Scripts
if ( !function_exists( \'core_mods\' ) ) {
    function core_mods() {
        if ( !is_admin() ) {
            wp_deregister_script( \'jquery\' );
            wp_register_script( \'jquery\', ( "//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" ), false);
            wp_enqueue_script( \'jquery\' );
        }
    }
    add_action( \'wp_enqueue_scripts\', \'core_mods\' );
}

function addMyScripts() {
    /*wp_register_script( \'modernizr\', get_template_directory_uri().\'/_/js/modernizr.js\', null, false );
    wp_enqueue_script( \'modernizr\' );*/

    wp_register_script( \'jwplayer\', get_template_directory_uri().\'/_/js/jwplayer.js\', null, false );
    wp_enqueue_script( \'jwplayer\' );

    wp_register_script( \'bootstrap\', get_template_directory_uri().\'/_/js/bootstrap.js\', array(\'jquery\'), false );
    wp_enqueue_script( \'bootstrap\' );

    wp_register_script( \'spk_slide\', get_template_directory_uri().\'/_/js/slides.js\', array(\'jquery\'), false );
    wp_enqueue_script( \'spk_slide\' );
}
//add_action(\'wp_enqueue_scripts\', \'addMyScripts\');

// Add slider to front page
function my_enqueue_stuff() {
  if ( is_front_page() ) {
    addMyScripts();
    }
}
add_action( \'wp_enqueue_scripts\', \'my_enqueue_stuff\' );
解决方案:经过研究,我发现效果名称是FOUC(未格式化内容的flash)。我只需要增加添加样式表的函数的优先级,以便将它们添加到head部分:add\\u action(\'wp\\u enqueue\\u scripts\',\'core\\u mods\',\'2\')。

1 个回复
最合适的回答,由SO网友:s_ha_dum 整理而成

更改的位置wp_enqueue_style 在…内functions.php 不会有什么不同。脚本和样式打印在两个挂钩上。内部注册功能的放置functions.php 不是一个因素。

您的样式表正在页脚中加载。也不wp_enqueue_style 也没有wp_register_style 拥有$in_footer 参数likewp_enqueue_scriptwp_register-script.

我必须假设您的主题正在加载手动连接到的脚本wp_footer. 寻找add_action(\'wp_footer\',.

请编辑您的问题,以包含包含样式表的代码。这将有助于改进这个答案。

结束

相关推荐

不同文件夹中父项的style.css的子项主题模板值

我正在制作一个儿童主题.../wp-content/themes/ 然而,我构建的父主题位于.../wp-content/plugins/ 目录我可以导入父级style.css 文件使用目录路径,但当我尝试对模板值执行相同操作时,它不起作用。类似地,父主题文件夹的简单名称也不起作用,可能是因为父主题位于不同的目录中。有没有办法解决这个问题?