I'm designing a header which is made of 3 parts.
The page must be fluid: min-width:940px; max-width:1200px;
min-width:940px; max-width:1200px;
The first two parts of the header will be fixed size:
left middle right
<---------><---------><----------------->
134px 183px (Fill the remaining space)
I'd like the right part to change depending on the size of the page, I'll paste what I have so far but my problem is making it fill the gap completetly.
HTML:
<div class="main">
<div class="left"></div>
<div class="middle"></div>
<div class="right"></div>
CSS:
.main{
margin:auto;
min-width:940px;
max-width:1200px;
background-color:#000;
}
.left{
float: left;
width: 134px;
height: 191px;
background-color:#0000ff;
}
.middle{
float: left;
width: 183px;
height: 191px;
background-color:#ffff00;
}
.right{
float: left;
width: 60%;
height: 191px;
background-color:#ff0000;
}
Try this:
<html>
<head>
<title>Three columns</title>
<style type="text/css">
div.main { background-color: #000; }
div.left { float: left; width: 134px; height: 191px; background-color:#0000ff; }
div.middle { float: left; width: 183px; height: 191px; background-color:#ffff00; }
div.right { height: 191px; background-color: #ff0000; margin-left: 317px; }
</style>
</head>
<body>
<div class="main">
<div class="left"></div>
<div class="middle"></div>
<div class="right"></div>
</div>
</body>
</html>
I don't have enough reputation to comment, but I just wanted to endorse the correctness of the previous answer. I was looking for something slightly different: fixed-liquid-fixed, so tweaked it as follows:
<html>
<head>
<title>Three columns</title>
<style type="text/css">
div.main { background-color: #000; }
div.left { float: left; width: 134px; height: 191px; background-color:#0000ff; }
div.middle { height: 191px; background-color: #ff0000; margin-left: 134px; margin-right: 183px;}
div.right { float: right; width: 183px; height: 191px; background-color:#ffff00; }
</style>
</head>
<body>
<div class="main">
<div class="left"></div>
<div class="right"></div>
<div class="middle"></div>
</div>
</body>
</html>
Key points to notice: - margins, with float, are used to prevent the body overlapping with the edges. - in my case, you need to reverse the order of the divs in the html - you actually don't need a div for the "middle". One site that does without is the quirksmode blog (it just sets margins directly on the "body" element): http://www.quirksmode.org/blog/archives/browsers/index.html
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.