用这个css
.addProblemClass{
width:300px;
height:300px;
/*width:25%;
height:40%;*/
border:solid 1px #000000;
margin: 5px;
background-color:#FFFFFF;
padding:5px;
opacity:0.9;/*For chrome and mozilla*/
filter:alpha(opacity=90);/*For IE*/
}
.boxHeader{
border: solid 1px #000000;
height: 20%;
padding: 5px;
}
.addProblemHeaderTextDiv{
border:solid 1px #FF0000;
width: 80%;
height: 100%;
}
.addProblemHeaderImageDiv{
border:solid 1px #00FF00;
float: left;
width: 20%;
height: 100%;
}
和这个html
<div class="addProblemClass">
<div class="boxHeader">
<div class="addProblemHeaderImageDiv"></div>//DIV A
<div class="addProblemHeaderTextDiv"></div>//DIV B
</div>
</div>
为什么DIV A和DIV B过度使用?
答案 0 :(得分:1)
使用
float: left;
到addProblemHeaderTextDiv
班级
.addProblemHeaderTextDiv{
border:solid 1px #FF0000;
width: 80%;
float: left;
height: 100%;
}
<强> 修改 强>
为什么它以两行显示?
由于您将宽度指定为20%和80%,因此它们将填满整个空间。您还设置了边框,因此它不适合100%的空间。您可以减小任何div的宽度或删除边框。
答案 1 :(得分:0)
你因为CSS Box模型而无法做到这一点..它会像这样添加1px边框
20% + 80% = 100% width + 1px border
这可以通过使用边距再次减去边框来实现。否则你恐怕会使用更多标记。
.addProblemHeaderTextDiv{
border:solid 1px #FF0000;
width: 80%;
margin: 0 -1px;
height: 100%;
float: left;
}
.addProblemHeaderImageDiv{
border:solid 1px #00FF00;
margin: 0 -1px;
float: left;
width: 20%;
height: 100%;
}