让前面有图标的文本与下一行的文本垂直对齐



正如您在下面的代码中看到的,每一行上的文本都从不同的位置开始,因为前面的图标有不同的尺寸,这使得文本看起来很混乱。让文本相互对齐(意味着它们都从同一个地方开始(的最佳方法是什么?

.iconText {
margin-left: 10px;
}
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.1.1/css/all.css" integrity="sha384-O8whS3fhG2OnA5Kas0Y9l3cfpmYjapjI0E4theH4iuMD+pLhbf6JI0jIMfYcK3yZ" crossorigin="anonymous">
<p><i class="far fa-eye"></i><span class='iconText'>Views</span></p>
<p><i class="far fa-comments"></i><span class='iconText'>Comments</span></p>
<p><i class="fas fa-file-download"></i><span class='iconText'>Download</span>></p>
<p><i class="fas fa-tags"></i><span class='iconText'>Tags</span></p>

Font Awesome有一个内置类来解决这个问题。fa-fw(fw=固定宽度(

将类应用于每个图标,它们将占据相同的水平空间。

https://fontawesome.com/how-to-use/on-the-web/styling/fixed-width-icons

.iconText {
margin-left: 10px;
}
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.1.1/css/all.css" integrity="sha384-O8whS3fhG2OnA5Kas0Y9l3cfpmYjapjI0E4theH4iuMD+pLhbf6JI0jIMfYcK3yZ" crossorigin="anonymous">
<p><i class="far fa-eye fa-fw"></i><span class='iconText'>Views</span></p>
<p><i class="far fa-comments fa-fw"></i><span class='iconText'>Comments</span></p>
<p><i class="fas fa-file-download fa-fw"></i><span class='iconText'>Download</span>></p>
<p><i class="fas fa-tags fa-fw"></i><span class='iconText'>Tags</span></p>

我会将每个图标的宽度设置为一些静态值,例如:

i { width: 1em }

最新更新