Как бы вы сделали два перекрытия <div>?

Мне нужно два div, чтобы немного походить на это:

    |               |
 ---|    LOGO       |------------------------
|   |_______________|  LINKS                |
|             CONTENT                       |

Какой самый аккуратный/самый изящный способ заставить их перекрываться аккуратно? Логотип будет иметь фиксированную высоту и ширину и будет касаться верхнего края страницы.

Ответ 1

Я мог бы подойти к этому так (CSS и HTML):

html,
body {
  margin: 0px;
}
#logo {
  position: absolute; /* Reposition logo from the natural layout */
  left: 75px;
  top: 0px;
  width: 300px;
  height: 200px;
  z-index: 2;
}
#content {
  margin-top: 100px; /* Provide buffer for logo */
}
#links {
  height: 75px;
  margin-left: 400px; /* Flush links (with a 25px "padding") right of logo */
}
<div id="logo">
  <img src="https://via.placeholder.com/200x100" />
</div>
<div id="content">
  
  <div id="links">dssdfsdfsdfsdf</div>
</div>

Ответ 2

Просто используйте отрицательные поля, во втором div скажите:

<div style="margin-top: -25px;">

И не забудьте установить свойство z-index для получения желаемого слоя.

Ответ 3

При абсолютном или относительном позиционировании вы можете выполнять всевозможные наложения. Вероятно, вы хотите, чтобы логотип был стилизован как таковой:

div#logo {
  position: absolute;
  left: 100px; // or whatever
}

Примечание: абсолютное положение имеет свои эксцентриситеты. Вам, вероятно, придется немного поэкспериментировать, но не слишком сложно делать то, что вы хотите.

Ответ 4

Используя CSS, вы устанавливаете div для логотипа абсолютным и устанавливаете z-порядок выше второго div.

#logo
{
    position: absolute:
    z-index: 2000;
    left: 100px;
    width: 100px;
    height: 50px;
}

Ответ 5

Если вы хотите, чтобы логотип занимал место, вы, вероятно, лучше плаваете влево, а затем перемещаетесь по содержимому с использованием поля, вроде как:

#logo {
    float: left;
    margin: 0 10px 10px 20px;
}

#content {
    margin: 10px 0 0 10px;
}

или любой желаемый запас.