Jump to content
  • 0

Размещение вложенных блоков ПОД слоем, в который они вложены


StormMan
 Share

Question

Друзья, проблема такая. Есть две кнопки для листания карусели вперёд и назад (.prev и .next), мне нужно их разместить за блоком #page, в котором эта карусель находится. Дизайнерская задумка такая, что тень от #page падает на эти блоки, а тень, отбрасываемая блоками, частично скрывается за блоком #page. То есть #page находится над .prev и .next. Но почему-то не получается у меня поместить эти стрелки в нужное место, в результате они сами отбрасывают свою тень на #page. То есть они находятся над контейнером, в который помещены, а не под ним, как мне это нужно. Танцы с бубном вокруг z-index и position мне не помогли.. Подскажите, вообще задача реальная стоит? И если реальная, как добиться нужного результата?

В коде ниже есть ещё блок header, его у меня получилось над #page поставить. А вот с .prev и .next фиаско.. Помогите, пожалуйста, советом.


<!DOCTYPE html>
<head>
<meta charset="UTF-8">
<title>тест</title>
<meta name="description" content="тест">
<style>
body {
background: #a1a1a1;
margin:0;font-size:1em;line-height:1;
}
.wrapper {
margin: 0 auto;
padding: 0;
width: 760px;
position: relative;
}
header {
position: fixed;
top: 0;
height: 30px;
width: 100%;
background: #54005c;
box-shadow: 0 0 9px rgba(0,0,0,.32);
overflow: hidden;
z-index: 10;
}
#page {
background-color: white;
min-height: 800px;
top: 30px;
box-shadow: 0 0 9px rgba(0,0,0,.32);
font-size: 14px;
z-index: 3;
}
#panel {
position: relative;
top: 14px;
background: #eee;
height: 60px;
}
a.prev,
a.next {
position: absolute;
background: #eee;
z-index: 5;
width: 40px;
height: 60px;
box-shadow: 0 0 7px rgba(0,0,0,.32);
}
a.prev {
left: -40px;
}
a.next {
right: -40px;
}
</style>
</head>
<body>
<header>
</header>
<div id="page" class="wrapper">
<section id="panel">
<a class="prev" id="prev_btn1" href="#"><span>prev</span></a>
<a class="next" id="next_btn1" href="#"><span>next</span></a>
</section>
</div>
</body>

p.s. Вёрстка только под современные браузеры.

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 0

могу предложить вот такую схему, размер тени только подрегулировать нужно наверно

http://jsfiddle.net/KyYXq/2/

но я бы посоветовал у ссылок тень перекрыть или сдвинуть ее от центра, чтобы на карусельку не накладывалась

PS

наверно что-то вроде этого

http://jsfiddle.net/KyYXq/3/

Edited by Switch74
  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Similar Content

    • By WNSY
      Более опытные товарищи, ай нид ё хелп!)
      Имеется выпадающее меню с классом .sub-menu__list. При наведении оно выпадает, но перекрывается блоком .page__main. Для наглядности прикрепляю скрин и код.
      Естественно, нужно, чтобы выпадающее меню было поверх контента следующего блока.
      Подскажите, как это реализовать?
      P.S. Если нужно поиграть с z-index, подскажите в каком классе, т.к. я перепробовал свои варианты - результата не дало.

       
      HTML
      <header class="header"> <div class="header__all _container"> <div class="header__image"> </div> </div> <div class="header__container _container"> <a href="#" class="header__logo"><img src="img/SL-logo.png" alt="SL"></a> <nav class="header__menu menu"> <ul class="menu__list"> <li class="menu__item"> <a href="#" class="menu__link">Главная</a> </li> <li class="menu__item"> <a href="#" class="menu__link">Обучение</a> <ul class="sub-menu__list"> <li class="sub-menu__item"><a href="#" class="sub-menu__link">Направления</a></li> <li class="sub-menu__item"><a href="#" class="sub-menu__link">Стоимость</a></li> <li class="sub-menu__item"><a href="#" class="sub-menu__link">Расписание</a></li> </ul> </li> <li class="menu__item"> <a href="#" class="menu__link">О нас</a> </li> <li class="menu__item"> <a href="#" class="menu__link">Контакты</a> </li> <li class="menu__item"> <a href="#" class="menu__link">Доп.услуги</a> </li> </ul> </nav> <a href="#" class="header__phone"><img src="img/header-phone.png" alt="h-phone"></a> </div> </header> <main class="page"> <div class="page__container _container"> <div class="page__main"></div> CSS
      .header { } .header__all + ._container { position: relative; } .header__image { background: grey; background-size: cover; height: 302px; font-size: 48px; text-align: center; } /*=======================================HEADER-NAV=======================================*/ .header__container { display: flex; min-height: 110px; align-items: center; margin: 15px auto 0 auto; position: absolute; } .header__logo { } .header__menu { margin: 0 0 0 95px; } .menu { } .menu__list { display: flex; } .menu__item { position: relative; } .menu__item:not(:last-child) { margin: 0 68px 0 0; } .menu__link { font-size: 20px; } .header__phone { margin: 0 0 0 175px; } /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~SUB-MENU~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/ .sub-menu__list { display: none; position: absolute; } .sub-menu__item { width: 204px; } .sub-menu__item:first-child { padding: 40px 0 0 0; } .sub-menu__link { font-size: 18px; max-width: 204px; } .sub-menu__item:not(:last-child) { margin: 0 0 22px 0; } .menu__item:hover .sub-menu__list { display: block; } /*=======================================MAIN=======================================*/ .page { } .page__container { } .page__main { background: rgba(203, 32, 218, 0.25); height: 300px; font-size: 48px; text-align: center; }  
    • By yaparoff
      Задумка такая: форма выдвигается/задвигается за хедер. Но у меня когда она двигается она "проползает" сверху хедера. А по идее должна ползти под хедером, и ее не должно быть видно когда она ползет
      Попробовал решить это с помощью z-index - почему то не помогло
      Что делать?
       
    • By Владимир Горинов
      Добрый день, что делаю не так? Глаза уже замылил себе пытаясь найти причину.
      Нужно сделать - спозиционировать картинки так, что бы центральная перекрывала все, а 2 боковые были за родительским блоком и за центральной картинкой Тык
      А получается только вот так  - 2 боковые позади центральной, но не могу их поставить позади родителя - Тык
      Либо подскажите как грамотно оформить этот блок с будущим нацеливанием на адаптивность.
      <div class="row"> <div class="col"> <div class="services-boxes"> <div class="services-boxes_first-box"> <img class="services-boxes_first-box__first-house" src="img/first_house.png" alt=""> <img class="services-boxes_first-box__second-house" src="img/second_house.png" alt=""> <img class="services-boxes_first-box__third-house" src="img/third_house.png" alt=""> <h3>Мечтаете о доме на Солнечном берегу?</h3> <p> Или хотите выгодно инвестировать в заграничную недвижимость? В любом случае - подходящий вариант уже ждет Вас! Большой выбор объектов жилой и коммерческой недвижимости и профессиональный сервис позволит провести сделку с удовольствием и получить нужный результат </p> </div> <!-- /.services-boxes_first-box --> </div> <!-- /.services-boxes --> .services-boxes_first-box { background-color: #f4f4f4; width: 74%; margin: auto; padding: 70px 0 43px 0; padding-left: 50px; padding-right: 50px; margin-top: 150px; position: relative; z-index: 4; } .services-boxes_first-box__first-house { display: block; position: absolute; left: -183px; top: -67px; right: 0; margin-left: auto; margin-right: auto; z-index: 1; } .services-boxes_first-box__second-house { display: block; position: absolute; left: 0px; top: -124px; right: 0; margin-left: auto; margin-right: auto; z-index: 100; } .services-boxes_first-box__third-house { display: block; position: absolute; left: 0px; top: -53px; right: -148px; margin-left: auto; margin-right: auto; z-index: 2; } .services-boxes_first-box h3 { font-size: 20px; text-transform: uppercase; } .services-boxes_first-box p { font-family: "Museo Sans Cyrl-100"; font-size: 17px; font-weight: 400; line-height: 25px; padding-top: 13px; }  
    • By Brodyaga337
      Поочему фон со звёздами не прячется под body у которого:
      body { background-color: #EDE8C9; position:relative; z-index: 2; font-family: "RobotoRegular", sans-serif; font-size: 16px;
    • By siemens1111@yandex.ru
      страница отображается во всех браузерах правильно, кроме chrome: баннера перекрывают выпадающее меню
      что не так для chroma?
      вот ссылка на страницу http://centrpol.com.ua/index.html
      прин-скрин прикрепил: слева во всех брайзерах верно, справа в Хроме не верно

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy