html - Fixed sidebar but responsive layout -
this preview of website i'm working on: http://jsfiddle.net/x4yc8/
it has fixed (full height) sidebar scrolling main content section.
when width of window reduced (see screenshot below) main content overlaps sidebar. how ensure doesn't happen?
ideally main content appear below sidebar when screen width e.g. when viewed on mobile-sized screen
thanks in advance!
my code is:
css
/* css document */ @import url(http://fonts.googleapis.com/css?family=open+sans); html, body { height:100%; margin: 0px; padding: 0px; color: #fff; background-color: #06c; } #sidebar { width: 250px; height: 100%; left: 0; float:left; background-color: #006; padding-top: 25px; position: fixed; clear: right; } section#settings { width:auto; float:left; margin-left:250px; padding-top: 60px; padding-right: 25px; padding-bottom: 25px; padding-left: 25px; position: absolute; } #sidebar #menubar li, #sidebar #menubar li:link, #sidebar #menubar li:visited { padding-top: 10px; padding-right: 25px; padding-bottom: 10px; padding-left: 25px; } #sidebar #menubar li a, #sidebar #menubar li a:link, #sidebar #menubar li a:visited { font-family: 'open sans', sans-serif; font-size: 80%; color: #fff; text-decoration: none; } #logo { height: 90px; width: 200px; margin-top: 0px; margin-right: 25px; margin-bottom: 25px; margin-left: 25px; } #sidebar #menubar li:hover { padding-top: 10px; padding-right: 25px; padding-bottom: 10px; padding-left: 25px; background-color: #06c; } #sidebar #menubar li a:hover { font-family: 'open sans', sans-serif; font-size: 80%; color: #fff; text-decoration: none; } #sidebar #menubar li#active{ font-family: 'open sans', sans-serif; color: #fff; text-decoration: none; padding-top: 10px; padding-right: 25px; padding-bottom: 10px; padding-left: 25px; background-color: #0066cc; } #sidebar #menubar { padding: 0px; margin: 0px; list-style-type: none; } h1 { font-family: 'open sans', sans-serif; font-size: 150%; color: #fff; text-decoration: none; } h2 { font-family: 'open sans', sans-serif; font-size: 150%; color: #fff; text-decoration: none; } h3 { font-family: 'open sans', sans-serif; font-size: 125%; color: #fff; text-decoration: none; } p { font-family: 'open sans', sans-serif; font-size: 100%; text-decoration: none; color: #fff; line-height: 125%; }
html
<body> <section id="sidebar"> <div id="logo"><img src="logo" width="200" height="89" alt="logo" /></div> <ul id="menubar"> <li><a href="#">item 1</a></li> <li><a href="#">item 2</a></li> <li><a href="#">item 3</a></li> <li><a href="#">item 4</a></li> <li><a href="#">item 5</a></li> <li><a href="#">item 6</a></li> </ul> </section> <section id="settings"> <h1>heading 1</h1> <p>sed ultricies ut massa vehicula. nullam consequat lectus ut mauris venenatis, quis tincidunt urna malesuada. donec pellentesque, lectus eleifend tempus, dui ante porta tellus, nec lacinia tellus quam sed sem. integer lorem nibh, pulvinar nec est ac, consectetur tincidunt dolor. etiam fermentum aliquam sapien, nec eleifend arcuus dui, et vehicula tellus viverra ut. interdum et malesuada fames ac ante ipsum primis in faucibus. duis semper tellus eget est faucibus, et euismod quam viverra. sed dapibus felis mi mattis, eu ultrices tortor ultricies. nulla facilisi. duis blandit leo sed volutpat condimentum. nullam molestie dictum est, quis volutpat augue faucibus eu. pellentesque turpis ante, hendrerit id felis sit amet, semper elementum erat. maecenas vitae justo ullamcorper, ultrices felis at, volutpat erat. proin diam enim, ultricies ut erat sed, eleifend sagittis dui. pellentesque diam magna, mattis non nulla nec, varius commodo tortor. </p><p> curabitur mollis nunc eu adipiscing interdum. nunc nec eleifend enim. morbi congue metus justo, nec facilisis mauris vulputate id. sed id laoreet arcu. aliquam sed nunc ligula. vivamus bibendum dictum nisi, in placerat lacus convallis vitae. quisque placerat orci non quam fringilla, ac dictum ligula imperdiet. proin vel nibh tellus. sed pellentesque feugiat augue sed convallis. nunc lobortis sem odio, eget tempor urna suscipit at. vivamus accumsan, enim id cursus elementum, quam velit cursus sapien, in semper nulla ligula nec mi. proin pretium nunc vel leo ultricies placerat. </p><p> integer sed leo auctor, lobortis dui ut, sodales nunc. aliquam mi risus, rutrum sit amet ultrices faucibus, tincidunt eget sapien. nam vel purus eu dolor rutrum dapibus. phasellus euismod erat ac gravida adipiscing. sed ligula quam, ultricies id mollis vitae, consequat eget libero. lorem ipsum dolor sit amet, consectetur adipiscing elit. donec quam velit, feugiat in facilisis vitae, gravida ac enim. nunc venenatis enim eu aliquam ultrices. curabitur et lorem non leo pretium vulputate in @ ligula. quisque dignissim pretium erat non suscipit. phasellus aliquet dolor @ sapien egestas sollicitudin. fusce eget est sed tellus mollis eleifend laoreet lectus. </p> </section> <div style='clear:both;'></div> </body> </html>
use css @media change styles based on window width, eg:
@media (max-width: 600px){ #sidebar{ position:relative; height:auto; width:100%; float:left; } #menubar li{ display:inline; }
Comments
Post a Comment