Скрыть, содержащий Div, когда нет пунктов меню

Надеюсь, кто-то может помочь,

Сейчас я работаю над этим сайтом: http://new.leicesterymca.co.uk/youth-community/ На этой странице вы можете видеть, что отображается подменю, потому что есть дочерние страницы для показа. Если вы нажмете «Контакт», меню не появится.

НО, синий фон div все еще показывает …

Вот мой текущий код:

<div class="sub-nav-container-full">
<div class="container">
<div class="sub-page-menu">
<?php
$menu = wp_nav_menu(
array (
'theme_location' => 'header-menu',
'sub_menu' => true,
'echo' => FALSE,
'fallback_cb' => '__return_false'
)
);
if ( ! empty ( $menu ) )
{
?>

<?php
echo $menu;
}
?>
</div>
</div>
</div>

Как бы я изменил его, сказав «если нет подменю, то скрыть содержащий div;

<div class="sub-nav-container-full"></div>

Чтобы избавиться от синей полосы …

Надеюсь, кто-то может помочь 🙂

Большое спасибо,

Shaun.

0

Решение

Попробуйте вот так:

<div class="sub-nav-container-full">
<div class="container">
<?php
$menu = wp_nav_menu(
array (
'theme_location' => 'header-menu',
'sub_menu' => true,
'echo' => FALSE,
'fallback_cb' => '__return_false'
)
);
if ( ! empty ( $menu ) )
{
echo '<div class="sub-page-menu">'.$menu.'</div>';
}
?>
</div>
</div>
0

Другие решения

Вариант № 1, содержащий div, создается только при необходимости:

<?php
$menu = wp_nav_menu(
array (
'theme_location' => 'header-menu',
'sub_menu' => true,
'echo' => FALSE,
'fallback_cb' => '__return_false'
)
);
if ( ! empty ( $menu ) )
{
echo '<div class="sub-nav-container-full">
<div class="container">
<div class="sub-page-menu">';
echo $menu;
echo '</div></div></div>';
}
?>

Вариант № 2: Содержащий div всегда существует, но скрыт, если пуст. Добавить else блок так:

  // same as before
if ( ! empty ( $menu ) )
{
// same as before
}
else
{
echo '<div class="sub-nav-container-full" style="display: none;">
<div class="container">
<div class="sub-page-menu">';
echo '</div></div></div>';
}

Рассмотреть возможность использования visibility: hidden, вместо display: none, Элемент не отображается, но он все еще занимает место в макете.

Вариант № 2 может быть легко оптимизирован, сокращая количество повторяющихся строк.

0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector