所以我有这个简单的代码,可以在Chrome上完美运行:
.section-sub-desc-list {
margin: 0px;
font-weight: normal;
list-style-type: square;
}
.display-table {
display: table;
width: 100%;
}
.display-table-cell {
display: table-cell;
}
.time-interval {
display: table-cell;
width: 30%;
text-align: right;
font-style: italic;
font-weight: normal;
}
<ul class="section-sub-desc-list">
<li>
<div class="display-table">
<div class="display-table-cell">
B.S. Computer Science
</div>
<div class="time-interval">
Oct 2010 - Jun 2014
</div>
</div>
</li>
</ul>
单击运行按钮会显示预期结果,但这是它在Edge上呈现的方式:image
问题是在“li”标签上添加了额外的高度,但我不知道是什么原因以及如何修复它。
好吧,我一直在考虑显示属性,我终于让它在Edge上工作了。
这是新代码:
.section-sub-desc-list {
margin: 0px;
font-weight: normal;
list-style-type: square;
}
.display-table {
display: inline-flex;
width: 100%;
}
.display-table-cell {
width: 100%;
}
.time-interval {
white-space: nowrap;
text-align: right;
font-style: italic;
font-weight: normal;
}
<ul class="section-sub-desc-list">
<li>
<div class="display-table">
<div class="display-table-cell">B.S. Computer Science</div>
<div class="time-interval">Oct 2010 - Jun 2014</div>
</div>
</li>
</ul>
一些评论
display: inline-flex; width: 100%
与编写display: flex
是一回事。为什么我使用inline-flex方法?因为如果我只是在包装器上使用display: flex
属性,Edge仍然会弄乱高度,原因不明。width: 100%
计算机科学文本div不会使它填满整行,因为我们现在正在使用flex项,因为父(display-table)是一个flex容器。至少这是我认为flex项目的工作方式。white-space: nowrap
属性,因为它会因未知原因而回绕