Reputation: 12311
I try to use a fixed div for a navigation header.
Jumping to the desired areas works well but the content-div starts at the very top.
How can I make it start AFTER the navi-div?
It should be very simple and without JS or big CSS.
<div style="position: fixed; width: 100%; top: 0; background: white; border: 1px solid blue; height: 30px; margin: 10px;">
<a href="#aaa">gotoA</a>
<a href="#bbb">gotoB</a>
<a href="#ccc">gotoC</a>
</div>
<div id="aaa" style="background: yellow;">
a*<br>
a1<br>
a2<br>
a3</br>
a4</br>
a5</br>
a6</br>
a7</br>
a8</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a+</br>
</div>
<div id="bbb" style="background: orange;">
b*</br>
b1</br>
b2</br>
b3</br>
b4</br>
b5</br>
b6</br>
b7</br>
b8</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b+</br>
</div>
<div id="ccc" style="background: lime;">
c*</br>
c1</br>
c2</br>
c3</br>
c4</br>
c5</br>
c6</br>
c7</br>
c8</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c+</br>
</div>
I but a sample here:
Upvotes: 0
Views: 79
Reputation: 20821
Add padding-top
to the first content div, or a wrapper of all content divs.
<div style="position: fixed; width: 100%; top: 0; background: white; border: 1px solid blue; height: 30px; margin: 10px;">
<a href="#aaa">gotoA</a>
<a href="#bbb">gotoB</a>
<a href="#ccc">gotoC</a>
</div>
<div id="aaa" style="background: yellow; padding-top: 50px">a*<br>a1<br>a2<br>a3<br>a4<br>a5<br>a6<br>a7<br>a8<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>
a+<br></div>
<div id="bbb" style="background: orange;">b*<br>b1<br>b2<br>b3<br>b4<br>b5<br>b6<br>b7<br>b8<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b<br>b+<br></div>
<div id="ccc" style="background: lime;">c*<br>c1<br>c2<br>c3<br>c4<br>c5<br>c6<br>c7<br>c8<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c<br>c+<br></div>
Upvotes: 1
Reputation: 7661
Take a look at the following example
#aaa {
background: yellow;
margin-top: calc(var(--menu-height) + (2 * var(--menu-margin))); /* 2 * margin for top and bot */
}
#bbb {
background: orange;
}
#ccc {
background: lime;
}
.menu {
position: fixed;
width: 100%;
top: 0;
background: white;
border: 1px solid blue;
height: var(--menu-height);
margin: var(--menu-margin);
}
:root {
--menu-height: 30px;
--menu-margin: 10px;
}
<div class="menu">
<a href="#aaa">gotoA</a>
<a href="#bbb">gotoB</a>
<a href="#ccc">gotoC</a>
</div>
<div id="aaa">
a*<br>
a1<br>
a2<br>
a3</br>
a4</br>
a5</br>
a6</br>
a7</br>
a8</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a</br>
a+</br>
</div>
<div id="bbb">
b*</br>
b1</br>
b2</br>
b3</br>
b4</br>
b5</br>
b6</br>
b7</br>
b8</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b</br>
b+</br>
</div>
<div id="ccc">
c*</br>
c1</br>
c2</br>
c3</br>
c4</br>
c5</br>
c6</br>
c7</br>
c8</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c</br>
c+</br>
</div>
Upvotes: 0