如果我有一个 div,我想在其他两个 div 之间居中,一个向左浮动,一个向右浮动,在两边(在它和那一侧的 div 之间)给它一个正好 10 像素的边距,我将如何给它一个流体宽度,这样它会随着窗口大小的变化而变宽或变窄,但始终保持它与两侧的 div 之间的距离正好为 10 像素?
问问题
79 次
3 回答
0
尝试这个。这是一个小提琴
HTML
<div id=wrapper>
<div id=leftdiv>left</div>
<div id=rightdiv>right</div>
<div id=main>
Lorum Ipsum
</div>
</div>
CSS
#main {
padding-right:60px;
padding-left:60px;
}
#leftdiv {
float:left;
width:50px;
background-color:#ddd;
}
#rightdiv {
float:right;
width:50px;
background-color:#ddd;
}
于 2013-09-22T01:01:34.863 回答
0
这是我的答案:http: //jsfiddle.net/utThB/
如果你的左右div
元素是可变的witdh,我能看到这样做的唯一方法是通过jQuery(或纯JavaScript,问我这个版本)动态获取左右div的宽度,然后添加边距样式到居中的 div。
jQuery:
$(document).ready(setWidth);
function setWidth(){
var $left_width = $(".left").width() + 10;
var $right_width = $(".right").width() + 10;
$(".center").css("margin-left",$left_width + 'px');
$(".center").css("margin-right",$right_width + 'px');
}
HTML:
<div class="container">
<div class="left">Variable width DIV</div>
<div class="right">Another.</div>
<div class="center">Centered Div</div>
</div>
CSS:
.container{width:100%;}
.left{
float:left;
background-color:green;
}
.center{
text-align:center;
background-color:blue;
width:auto;
}
.right{
float:right;
background-color:red;
}
于 2013-09-22T01:19:49.557 回答
0
试试这个小提琴。解决方案适用于纯 CSS。
诀窍是:width: 230px; /* 10 more width than column size */
于 2013-09-22T01:23:20.023 回答