【发布时间】:2016-08-18 00:52:03
【问题描述】:
我有一个在 div 内按行显示的对象列表。当它们全宽时,它们工作正常。一旦我尝试让内部对象占据父对象的左半部分或右半部分,它们就会导致各种问题。下面是我希望它们出现的方式,以及它们实际出现的方式。如何使用 html/css 实现这种布局?我试过浮动元素(这往往会弄乱父列表)和内联块,但没有运气。
Plnkr:http://plnkr.co/edit/bP0ZWFplDFc6755LNNb5?p=preview
HTML:
<div class="employee-container">
<div class="full-shift">
<p>Person 1 <span>(40)</span></p>
</div>
</div>
<div class="employee-container">
<div class="full-shift">
<p>Person 2 <span>(40)</span> <span class="fa fa-clock-o"></span></p>
</div>
</div>
<div class="employee-container">
<div class="first-half">
<p>Person 3 <span>(40)</span></p>
</div>
<div class="second-half"></div>
</div>
<div class="employee-container">
<div class="first-half"></div>
<div class="second-half">
<p>Person 4 <span>(44)</span></p>
</div>
</div>
CSS:
.employee-container {
margin-bottom: 6px;
margin-top: 6px;
}
.employee-container > div {
padding: 3px;
background-color: lightsteelblue;
}
.employee-container > div .full-shift {
width: 100%;
}
.employee-container > div .first-half {
width: 50%;
}
.employee-container > div .second-half {
width: 50%;
}
期望的输出:
实际输出:
【问题讨论】: