如何正确对齐“text-align: justify;”内联块元素
虽然之前的讨论已经探索了使用“text-align: justify”均匀分布内联块元素的有效方法,但仍然存在一个持久的问题:最后一行下方不需要的垂直空间。
当前解决方法
可以使用以下 CSS 和HTML 结构:
HTML:
<div class="prevNext"> <a href="#">Link 1</a> <a href="#">Link 2</a> </div>
CSS:
.prevNext { text-align: justify; } .prevNext a { display: inline-block; position: relative; top: 1.2em; /* adjust to your line-height */ } .prevNext:before{ content: ''; display: block; width: 100%; margin-bottom: -1.2em; /* adjust to your line-height */ } .prevNext:after { content: ''; display: inline-block; width: 100%; }
说明:
具有负下边距的 :before 元素会提升文本行,消除多余的空间。内联块元素上的相对定位抵消了这种转变,而无需添加额外的行。 em 单位确保边距对齐,无论使用的行高如何。
未来的解决方案
近期的解决方案涉及使用 text-align-last 属性:
.prevNext { text-align: justify; text-align-last: justify; /* IE */ }
这消除了对额外 CSS 技巧的需要,但目前需要在 Webkit 中激活实验性功能
处理缩小文本问题
如果缩小删除了内联块元素之间的空格,请在锚标记之间添加不间断空格字符 ( )。
以上是如何消除合理的内联块元素下方的额外垂直空间?的详细内容。更多信息请关注PHP中文网其他相关文章!