我正在尝试显示彼此相邻的两个div。第一个是200x200像素,第二个是第一个的右边10个像素。它的高度为200像素,其宽度必须填充在页面右侧的右侧。
到目前为止,我有这个:
<html>
<head>
<style>
div.div1 {
border: 1px solid red;
color: red;
width: 200px;
height: 200px;
float: left;
}
div.div2 {
border: 1px solid black;
width: 100%;
height: 200px;
float: left;
margin-left: 10px;
}
</style>
</head>
<body>
<div class="div1"></div>
<div class="div2">Test123</div>
</body>
</html>
这适用于前两个要求,但是当我设置width: 100%
时,它会低于此值。如果我将它设置为像素数似乎可以工作,但是在我改变窗口大小时不会调整。我如何解决这个问题,以便第二个元素一直延伸到右边?
答案 0 :(得分:3)
您可以在父级上使用flex
,并设置.div2 { flex-grow: 1; }
以使其消耗.div1
剩余的所有可用空间
body {
display: flex;
}
.div1 {
width: 200px;
height: 200px;
color: red;
border: 1px solid red;
}
.div2 {
border: 1px solid black;
margin-left: 10px;
flex-grow: 1;
}
<div class="div1">div1</div>
<div class="div2">div2</div>
答案 1 :(得分:3)
你可以使用calc:
.div2 {
width: calc(100% - 214px);
}
100%减去200 px,10px边距,4px边框(2x左右边框)
答案 2 :(得分:2)
试试这个:
<html>
<head>
<style>
#div1 {
float:left;
width:200px;
border:1px solid red;
min-height:200px;
}
#div2 {
margin-left: 210px;
border:1px solid green;
min-height:200px;
}
</style>
</head>
<body>
<div id="div1"> </div>
<div id="div2"> </div>
</body>
</html>
答案 3 :(得分:1)
提示1 :在两个div中使用百分比来添加总计100%。
提示2 :使用max-width属性,以便第二个div可以扩展到不再某个点。
提示3 :使用开发人员工具(检查),选择第二个div并增加像素宽度,直到达到页面的总宽度。