我有以下HTML代码:
<ul class="blogEntry">
<li class="title section">
<span><asp:Literal ID="litTitle" runat="server" /></span>
<span class="date"><asp:Literal ID="litDate" runat="server" Text="10/1/1000" /></span>
</li>
<li class="body section"><asp:Literal ID="litBody" runat="server" /></li>
<li class="tags section">
<ul class="tags">
<li class="tag">Tag 1</li>
<li class="tag">Tag 2</li>
<li class="tag">Tag 3</li>
</ul>
</li>
</ul>
以下CSS代码:
ul.blogEntry
{
border: 1px solid black;
border-bottom: 0px;
padding: 0px;
}
ul.blogEntry li.section, ul.blogEntry li.lastsection
{
list-style: none;
}
ul.blogEntry li.title
{
background-color: #67A7FF;
font-size: 14px;
font-weight: bold;
}
ul.blogEntry li.title span
{
display: inline;
}
ul.blogEntry li.title.section span.date
{
float: right;
}
ul.blogEntry li.section
{
padding: 4px;
border-bottom: 1px solid black;
}
按原样,日期将下降到新行并向右浮动。如果我更改ul.blogEntry li.title span
CSS并添加float:left;外部LI元素的高度收缩,底部边框直接穿过跨度文本。建议?
答案 0 :(得分:7)
请不要添加任何元素进行清算。仅启用特定样式的元素会显着破坏语义和关注点分离。
简单的答案是将overflow:auto;
添加到容器元素(即li.title),但还有其他方法:
清算区块是EVIL。
答案 1 :(得分:0)
尝试:
.section {min-height: 10px;}
应该清除ie7和8中所有节类的浮点数。你可以尝试将元素浮动到你的约会日期之上,看看是否有效。
另外,浮动时,通常应设置宽度