Невозможно дать вам конкретное решение без образца вашего HTML, но комментарии верны, что применение непрозрачности к body
повлияет на все, что внутри него.
Предполагается, что ваша структура похожа на следующую:
<body>
<header></header>
<nav id="navigation-mobile"></nav>
<main></main>
<footer></footer>
</body>
Вы можете сделать что-то вроде:
$('body > *:not(#navigation-mobile)').css({'opacity': 0.5 })
Вам нужно будет настроить селектор в зависимости от вашей разметки, но общая идея заключается в том, что вы используете селектор :not()
, чтобы применить непрозрачность к братьям и сестрам вашей мобильной навигации, которая затем применит непрозрачность к их дочерним элементам. Например, если у вас есть контейнер, обертывающий весь ваш контент, вы можете заменить body
в селекторе на класс / идентификатор контейнера.
Если вы редактируете свой вопрос с соответствующим HTML, я могу отредактировать свой ответ, чтобы быть более конкретным.