Css 填充居中div的边?
我想用另一个div或span填充居中div的两侧 我使用边距将div居中,如图所示 HTMLCss 填充居中div的边?,css,layout,html,multiple-columns,Css,Layout,Html,Multiple Columns,我想用另一个div或span填充居中div的两侧 我使用边距将div居中,如图所示 HTML <div id='A> <div id='Ad'> </div> </div> 如何让一个div总是占据左侧的剩余空间,而另一个div总是占据右侧的剩余空间 澄清: <div id='A'> <div id='AdLeft'></div> <div id='Ad'></div>
<div id='A>
<div id='Ad'>
</div>
</div>
如何让一个div总是占据左侧的剩余空间,而另一个div总是占据右侧的剩余空间
澄清:
<div id='A'>
<div id='AdLeft'></div>
<div id='Ad'></div>
<div id='AdRight'></div>
</div>
#A { overflow:auto }
#AdLeft { float:left; width:25%; }
#Ad { float:left; width:50%; }
#AdRight { float:left; width:25%; }
<div id="A">
<div id="Ad">Centre</div>
<div id="left">Left</div>
<div id="right">Right</div>
</div>
#A {
z-index: 3000;
position: fixed;
width: 100%;
height: 400px;
background: rgba(0, 0, 0, 0.05);
}
/*
centered div
*/
#Ad {
z-index: 3000;
width: 400px;
height: 400px;
margin-left: auto;
margin-right: auto;
border-left: solid 1px #ff0000;
border-right: solid 1px #ff0000;
}
#left, #right {
position:absolute;
left:0;
top:0;
right:50%;
margin-right:200px;
background:#F00;
height: 400px;
}
#right {
left:50%;
right:0;
margin-left:200px;
margin-right:0;
}
中柱的宽度必须恒定。左栏和右栏随窗口大小的不同而变化。我只会使用3个浮动在主容器中的s
HTML:
<div id='A'>
<div id='AdLeft'></div>
<div id='Ad'></div>
<div id='AdRight'></div>
</div>
#A { overflow:auto }
#AdLeft { float:left; width:25%; }
#Ad { float:left; width:50%; }
#AdRight { float:left; width:25%; }
<div id="A">
<div id="Ad">Centre</div>
<div id="left">Left</div>
<div id="right">Right</div>
</div>
#A {
z-index: 3000;
position: fixed;
width: 100%;
height: 400px;
background: rgba(0, 0, 0, 0.05);
}
/*
centered div
*/
#Ad {
z-index: 3000;
width: 400px;
height: 400px;
margin-left: auto;
margin-right: auto;
border-left: solid 1px #ff0000;
border-right: solid 1px #ff0000;
}
#left, #right {
position:absolute;
left:0;
top:0;
right:50%;
margin-right:200px;
background:#F00;
height: 400px;
}
#right {
left:50%;
right:0;
margin-left:200px;
margin-right:0;
}
这里有一个修改过的。用于填充div代码左右两侧的空间,请使用并确保这些侧边没有边距或填充
float:right;
float:left;
HTML:
<div class='container'>
<div class='left'></div>
<div class='center'></div>
<div class='right'></div>
</div>
右边的边距.center将相应地填充该空间 这将达到您想要的效果-它允许您拥有一个固定宽度的中央div,左栏和右栏填充剩余空间: HTML:
<div id='A'>
<div id='AdLeft'></div>
<div id='Ad'></div>
<div id='AdRight'></div>
</div>
#A { overflow:auto }
#AdLeft { float:left; width:25%; }
#Ad { float:left; width:50%; }
#AdRight { float:left; width:25%; }
<div id="A">
<div id="Ad">Centre</div>
<div id="left">Left</div>
<div id="right">Right</div>
</div>
#A {
z-index: 3000;
position: fixed;
width: 100%;
height: 400px;
background: rgba(0, 0, 0, 0.05);
}
/*
centered div
*/
#Ad {
z-index: 3000;
width: 400px;
height: 400px;
margin-left: auto;
margin-right: auto;
border-left: solid 1px #ff0000;
border-right: solid 1px #ff0000;
}
#left, #right {
position:absolute;
left:0;
top:0;
right:50%;
margin-right:200px;
background:#F00;
height: 400px;
}
#right {
left:50%;
right:0;
margin-left:200px;
margin-right:0;
}
关键是左/右的边距是中心列总宽度的一半,因此调整它以考虑任何边框或填充
工作示例:制作3个div:
<div id="A"></div>
<div id="B"></div>
<div id="C"></div>
<div style="clear:both"></div>
这里,B是你的主要部门。
当您使用float属性时,最好进行清除。是否有理由不在主容器中使用3
s
?…不错,但Jon的解决方案要简单得多,有任何比较吗?确实如此。老实说,浮动是最常见的解决方案,但正如Jon之前提到的那样,我想我会提供一个不同的视角,因为这在某些情况下更合适(例如,您希望左栏和右栏位于父栏之外,而不是父栏是所有3栏的全宽).当然,Jon的解决方案使您的中心列变宽,这可能不合适。这个解决方案让你的中柱保持固定,同时保持另外两个弹性…我刚刚注意到…不能让中柱像那样改变宽度。你的中柱是400像素宽。我将左列定位为50%右侧,并将中心宽度除以2。技术上它应该是201px,因为1px的边界。我需要一个恒定宽度的中心div。只需更换(x)%w/a(x)px?