Absolutely positioned (side yellow advertisements) div's cause unwanted horizontal scrollbar when window is resized (size decreased) beyond them. Scrollbar should appear only when window is smaller than main #container
and these advertisement div's should not affect the layout. It doesnt matter if they get covered.
HTML:
<div id='topbar'> <div id='menu'> <a href='#'>Link1</a> <a href='#'>Link2</a> <a href='#'>Link3</a> <a href='#'>Link4</a> </div> </div> <div id='container'> <div id='pushfix'></div> <div id='ad_container'> <div id='ad1'>ad</div> <div id='ad2'>ad</div> </div> Lorem ipsum placeholder text </div>
CSS:
body, html { height:100%; } body { margin:0; } #topbar { width:100%; background-color:#DCDCDC; height:40px; position:absolute; } #menu { width:250px; background-color:#B3B3B3; margin:0 auto; height:100%; text-align:center; line-height:40px; } #menu a { color:#fff; } #container { height:100%; background-color:#808080; width:240px; padding:0 5px; margin:0 auto; } #pushfix { height:40px; } #ad_container { position:relative; width:240px; } #ad_container div { width:100px; background-color:yellow; height:300px; position:absolute; } #ad1 { left:-105px; } #ad2 { right:-105px; }
Exact layout replica: http://jsfiddle.net/8UkQA/
Web browsers do not take into account the width of the scrollbar on the side of a page when computing width values, so since we have a page that is longer than a single viewport, part of our page is being rendered behind the vertical scroll bar, causing the browser to display a horizontal scroll bar.
For horizontal scrollable bar use the x and y-axis. Set the overflow-y: hidden; and overflow-x: auto; that will automatically hide the vertical scroll bar and present only the horizontal scrollbar. The white-space: nowrap; property is used to wrap text in a single line.
Solution(By Examveda Team) View buttons is placed to the left of horizontal scroll bar.
Absolutely-positioned elements that expand beyond the boundaries of the body
seem to cause scrollbars to appear, for some reason. You can remedy this by simply wrapping everything inside the body tag in a relatively-positioned div styled with overflow: hidden;
. The absolutely positioned content that expands beyond the boundaries of this container won't cause scrollbars on the window.
Here's a working example: http://jsfiddle.net/8UkQA/1/
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With