事情是这样的:
为了使页面看起来比较整齐,我限制了书名的长度并添加title显示。发现我将中间书名设置成 "display: inline-block;"后,书名位置偏上显示了(如下图)。
<style>
.box {
}
.book-name-box {
display: inline-block;
min-width: 200px;
text-align: right;
}
.mid {
display: inline-block;
max-width: 100px;
text-overflow: ellipsis;
overflow: hidden;
white-space:nowrap;
}
</style>
<div class="box">
<span class="book-name-box">
《
<span class="mid">1这是一个很长的书名</span>
》:
</span>
<span>这里是一个描述信息</span>
</div>
<div class="box">
<span class="book-name-box">
《
<span class="mid">2书名</span>
》:
</span>
<span>这里是一个描述信息</span>
</div>
<div class="box">
<span class="book-name-box">
《
<span class="mid">3这是一个很长的书名</span>
》:
</span>
<span>这里是一个描述信息</span>
</div>
经过一番调查研究后发现,原来是inline-block元素内的元素基线发生了变化。
解决方法就是在此元素上设置一个vertical-align:middle/top/bottom。
<style>
.book-name-box {
display: inline-block;
min-width: 200px;
text-align: right;
}
.mid {
display: inline-block;
max-width: 100px;
text-overflow: ellipsis;
overflow: hidden;
white-space:nowrap;
vertical-align: bottom; // 此处新增
}
</style>
大功告成!!!