Вот один из методов.Я не думаю, что это особенно элегантно, но, кажется, делает то, что вы просите.http://jsfiddle.net/V5tVx/
Основной метод - расположить точки на заднем плане, а затем использовать абсолютное позиционирование, чтобы поместить имя и цену слева и справа.Я немного изменил HTML, чтобы сделать это возможным.
HTML:
<ul id="pricelist">
<li>
<input type="checkbox" />
<span class="linefiller">
...............................................................................................................................
</span>
<span class="itemname">Back office system</span>
<span class="itemprice">$996.00</span>
</li>
<li>
<input type="checkbox" />
<span class="linefiller">
...............................................................................................................................
</span>
<span class="itemname">Filing cabinet</span>
<span class="itemprice">$100.00</span>
</li>
</ul>
CSS:
#pricelist {
width:300px;
margin:auto;
}
#pricelist > li {
position:relative; /* required so that absolute positioning works later */
}
.itemname {
display:inline-block;
position:absolute;
left:20px; /* leave space for the checkbox */
top:0px;
background-color:white; /* so that we don't see dots underneath */
}
.itemprice {
display:inline-block;
position:absolute;
right:0px; /* right-aligned */
top:0px;
background-color:white; /* so that we don't see dots underneath */
}
.linefiller {
display:block;
max-width:280px; /* should be 20px less than the list width */
overflow:hidden;
position:absolute;
left:20px; /* leave space for the checkbox */
top:0px;
}