如何浮动两个div高度相同而在第二个div滑落后,容器宽度适合子宽度和divs自动居中?我为我的英语道歉。 :(
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
<title></title>
<style type="text/css">
.container{
text-align:center;
display:block;
background-color:grey;
}
.left {
background-color:#EFF5FB;
width: 510px;
float: left;
min-height:50px;
}
.right {
float: left;
width: calc(100% - 520px);
width: -webkit-calc(100% - 520px);
width: -moz-calc(100% - 520px);
width: -o-calc(100% - 520px);
min-width:510px;
background-color: #00f;
height:100%;
//min-height:50px; (edited)
}
.clear{clear:both;}
</style>
</head>
<body>
<div class="container">
<div class="left"><p>paragraph 1</p><p>paragraph 2</p></div>
<div class="right"><p>paragraph 1</p></div>
<div class="clear"></div>
</div>
</body>
</html>
答案 0 :(得分:1)
你可以用CSS中的一个简单类来做,宽度:50%页边距:0填充:0并将该类放入你想要放在一起的两个div中,然后你可以像这个例子一样进行媒体查询:
<fo:inline-container vertical-align="top" inline-progression-dimension="49.9%">
<fo:block>left content</fo:block>
</fo:inline-container>
<fo:inline-container vertical-align="top" inline-progression-dimension="49.9%">
<fo:block>right-content</fo:block>
</fo:inline-container>
答案 1 :(得分:1)
您应该移除浮动广告,并为width: auto;
&amp;提供.left
.right
元素,在宽度减小的某个点。此外,要使.container
中心对齐,请max-width
并使用margin-left: auto;
&amp; margin-right: auto;
以下是媒体查询:
@media (max-width: 600px){
.container{
max-width: 400px;
margin:0 auto;
}
.left, .right{
float: none;
width: auto;
padding: 10px;
}
.left p{
padding-bottom: 10px;
}
}
添加<p>
标记的填充底部以获取元素之间的间距。
在这里找到工作小提琴:http://jsfiddle.net/MasoomS/3xw2qpb8/
答案 2 :(得分:0)
您可以使用表格制作两个相同高度的div。
<table style="width:100%">
<tr>
<td style="float:right";>Jill</td>
<td style="float:left";>Smith</td>
</tr>
</table>
由于表的<td>
元素具有默认显示:table-cell属性使它们以相同的高度显示。
稍后当他们因窗口大小更改而翻转时,您可以添加媒体查询以根据需要进行更改。