Поддержка Проблемы и решения Почему не перебивается родительский стиль?

  • background стиля основной темы перебивает дочерний стиль. Помогает только !important.
    Почему так происходит, и тем более 3 раза стиль к элементу подключается…
    Сам по себе дочерний стиль подключается нормально после родительского в function.php.
    Но все правки приходиться делать через !important

    стили

Просмотр 6 ответов — с 16 по 21 (всего 21)
  • есть решения как дочерний стиль сдвинуть на «после» стиля, берущегося из базы? или это уже другая тема?

    Модератор Yuri

    (@yube)

    есть решения как дочерний стиль сдвинуть на «после» стиля, берущегося из базы?

    Возможно. Но решение полностью зависит от того, как берущиеся из базы стили неведомая тема подключает в html.

    есть решения как дочерний стиль сдвинуть на «после» стиля, берущегося из базы?

    Можно вручную влепить в самый конец (дочернего) хэдера. Так себе решение, но работает)

    kword (@kw56), через include или import ? не знаю как правильно спросить
    даже так делал, все равно стиль <style id=’elixar-style-inline-css’ type=’text/css’> идет позже дочернего….

    function prefix_add_footer_styles() {
    wp_enqueue_style('child-theme-css', get_stylesheet_directory_uri() .'/style.css');
    }
    add_action( 'get_footer', 'prefix_add_footer_styles' );

    Юрий (@yube), как? там нет ссылок на источник

    <link rel='stylesheet' id='elixar-style-css'  href='http://letay.space/wp-content/themes/letayspace-on-elixar/style.css?ver=5.3' type='text/css' media='all' />
    <style id='elixar-style-inline-css' type='text/css'>
    .sitetopbar{background-color:#}.top-detail-inverse .social-top-detail i:before,.top-detail-inverse .social-top-detail i:after,.top-detail-inverse .social-top-detail i:hover:after,#header-nav ul li a:hover,#header-nav li.current-menu-item a,#header-nav li.current_page_item a,#header-nav li:hover>a,#header-nav ul li a{color:}
    </style>
    <link rel='stylesheet' id='elixar-theme-skin-red-css'  href='http://letay.space/wp-content/themes/elixar/css/skins/elixar-red.css?ver=5.3' type='text/css' media='all' />
    Модератор Yuri

    (@yube)

    Мы говорим о том, что дочерний надо подключить после style id='elixar-style-inline-css'?

    Если указание ‘elixar-style-inline-css’ в зависимостях дочернего не поможет, можно по хамски рабоче-крестьянски:

    add_action('wp_head', function() {
    echo "<link rel='stylesheet' id='child-theme-css'  href='" . get_stylesheet_directory_uri() . "/style.css?ver=50' type='text/css' media='all' />";
    }, 999999);
    

    вместо культурного wp_enqueue_style().

    Юрий (@yube), да, это тот стиль, который формируется из настроек темы, которые содержаться в таблице в базе sql. Указание зависимости не помогло, почему то.
    Вот

    wp_enqueue_style('parent-theme-css', get_template_directory_uri() .'/style.css', 10 );
    wp_enqueue_style('child-theme-css', get_stylesheet_directory_uri() .'/style.css', array('parent-theme-css', 'jquery-sidr-dark-css', 'bootstrap-css', 'elixar-style-css', 'elixar-style-inline-css', 'elixar-theme-skin-red-css'), 20 );

    А в чем «плохость» данного рабоче-крестьянского способа?
    попробовал — не подключился ((

    • Ответ изменён 4 года, 5 месяцев назад пользователем jurvrn.
Просмотр 6 ответов — с 16 по 21 (всего 21)
  • Тема «Почему не перебивается родительский стиль?» закрыта для новых ответов.